如何在我的Java项目中使用两个版本的jar

在我的Java项目中,我需要使用依赖于 和 依赖于

。我知道,如果我想直接使用两个版本的Lucene,可以使用ClassLoader从Lucene加载不同的类。 *


但是问题是我现在不会直接使用lucene的api。有什么方法可以在neo4j的api运行时加载lucene-3.6.2,而在运行Elasticsearch的api时加载lucene-4.4.0。lucene的两个版本现在冲突了,我需要在一个项目中运行neo4j和elasticsearch。我该如何解决依赖问题?

提前致谢。

回答:

您仍然可以使用ClassLoader解决方案,但这是一个讨厌的事情,很容易出错。

您还可以使用其他JVM。

但是我个人选择的解决方案是以下一项或两项:

  • 验证Neo4J是否与Lucene 4.x兼容。也许您会很幸运,并且使用最新版本不会有任何问题。
  • 将它们拆分为两个应用程序,其中另一个应用程序通过Web服务(最可能的REST)调用访问其中一个(例如Neo4J)。无论如何,Neo4J具有内置的REST API。

以上是 如何在我的Java项目中使用两个版本的jar 的全部内容, 来源链接: utcz.com/qa/430431.html

回到顶部