漏洞
升级至 2.8 版本后,对于在 .NET 全局程序集缓存 (GAC) 中注册了 .NET 3.5 版本 Lucene.net v3.0.3 的计算机,ArcGIS Pro 可能会在该计算机上启动时崩溃,并且返回异常“System.MissingFieldException”和消息“未找到字段:'Lucene.Net.Analysis.StopAnalyzer.ENGLISH_STOP_WORDS_SET'”。
Lucene.net 是 Esri 和非 Esri 应用程序都会使用的一个流行开源搜索库。
这已被记录为 BUG-000139936。
发生崩溃是由于 ArcGIS Pro 所使用的 Lucene.net.dll 副本与其他应用程序在 GAC 中注册的类似副本之间存在冲突。 目前尚不明确哪些应用程序正在受影响计算机上的 GAC 中注册冲突版本的 Lucene,但 Esri 已确认 ArcGIS Pro 和 ArcMap 均未在 GAC 中注册 Lucene v3.0.3。 .NET 框架通过允许 DLL 作者在 DLL 内容更改时,唯一命名和设置 DLL 版本来防止这种类型的 DLL 冲突。 但是,Lucene.net 库的编写方式并未允许轻松检测冲突。
警告: 下面的说明涉及更改操作系统的重要组成部分。 建议您先备份操作系统及文件(包括注册表),然后再继续操作。 必要时,请咨询有资历的计算机系统专业人士。 在遵循这些说明进行操作时,Esri 无法保证非正确修改造成的结果。 因此,请谨慎使用并自行承担风险。
ArcGIS Pro 2.8 现在应该可以启动,而不会发生崩溃。 但是,要使用新的“命令搜索”功能,则需要后续修补程序。
获取来自 ArcGIS 专家的帮助
下载 Esri 支持应用程序