Java 在ApacheGeode1.9.0中将Lucene从6.6.2升级到8.2.0

Java 在ApacheGeode1.9.0中将Lucene从6.6.2升级到8.2.0,java,spring-boot,lucene,geode,gfsh,Java,Spring Boot,Lucene,Geode,Gfsh,我需要在ApacheGeode1.9.0版中将lucene核心依赖项从6.6.2版升级到8.2.0版。在启用lucene索引的Geode中加载数据时,只需删除旧的lucene核心依赖项并添加lucene 8.2.0依赖项,就会出现以下错误 [warn 2019/09/21 14:54:57.395 GMT tid=0x62]任务失败,出现异常 java.lang.AbstractMethodError:org.apache.lucene.store.Directory.getPendingDel

我需要在ApacheGeode1.9.0版中将lucene核心依赖项从6.6.2版升级到8.2.0版。在启用lucene索引的Geode中加载数据时,只需删除旧的lucene核心依赖项并添加lucene 8.2.0依赖项,就会出现以下错误

[warn 2019/09/21 14:54:57.395 GMT tid=0x62]任务失败,出现异常
java.lang.AbstractMethodError:org.apache.lucene.store.Directory.getPendingDeletes()Ljava/util/Set;
位于org.apache.lucene.index.IndexFileDeleter.(IndexFileDeleter.java:212)
位于org.apache.lucene.index.IndexWriter(IndexWriter.java:898)
位于org.apache.geode.cache.lucene.internal.IndexRepositoryFactory.finishComputingRepository(IndexRepositoryFactory.java:123)
位于org.apache.geode.cache.lucene.internal.IndexRepositoryFactory.computeIndexRepository(IndexRepositoryFactory.java:66)
位于org.apache.geode.cache.lucene.internal.PartitionedRepositoryManager.computeRepository(PartitionedRepositoryManager.java:148)
位于org.apache.geode.cache.lucene.internal.PartitionedRepositoryManager.lambda$computeRepository$1(PartitionedRepositoryManager.java:167)
位于java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1853)
位于org.apache.geode.cache.lucene.internal.PartitionedRepositoryManager.computeRepository(PartitionedRepositoryManager.java:159)
在org.apache.geode.cache.lucene.internal.lucenbucketlistener.lambda$afterPrimary$0(lucenbucketlistener.java:40)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
位于org.apache.geode.distributed.internal.ClusterDistributionManager.rununtillShutton(ClusterDistributionManager.java:960)
位于org.apache.geode.distributed.internal.ClusterDistributionManager.doWaitingThread(ClusterDistributionManager.java:850)
位于org.apache.geode.internal.logging.LoggingThreadFactory.lambda$newThread$0(LoggingThreadFactory.java:121)
运行(Thread.java:748)

我能得到一些帮助吗?

您正在手动将Geode内部使用的库的版本从
6.x
更改为
8.x
,这是一个主要的升级,可能涉及一些非向后兼容性更改,这就是为什么您会收到此异常:它非常糟糕(通常不受支持)练习手动更改您无法控制的框架的库版本,特别是在不首先测试这些更改的情况下

我建议开一张罚单,要求通过网络进行改进


干杯。

在主要版本发布后,最后的代码可能会工作,因为代码是使用旧API编写的,您必须向代码维护人员提出同样的要求