java - 如何遮蔽 lucen-core 以便我可以使用 ElasticSearch 和 Solr 使用的两个版本?
问题描述
我有一个项目需要使用 ElasticSearch 7.6 和 Solr 6.6,但这些依赖项使用不同版本的 lucene-core。ES 带有 8.4,但 Solr 带有 6.6,当 Solr 尝试使用较新的版本时,它会出现随机类未找到错误,如下所示:
java.lang.NoClassDefFoundError: org/apache/lucene/document/LegacyIntField
我试图遮蔽,但没有任何运气,希望在这里得到一些帮助:)
我在 POM 中的依赖项:
<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>7.6.0</version>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>7.6.0</version>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-client</artifactId>
<version>7.6.0</version>
</dependency>
<dependency>
<groupId>org.apache.solr</groupId>
<artifactId>solr-solrj</artifactId>
<version>6.6.2</version>
</dependency>
<dependency>
<groupId>org.apache.solr</groupId>
<artifactId>solr-core</artifactId>
<version>6.6.2</version>
</dependency>
解决方案
推荐阅读
- python - 如何使用以线性代数形式给出的 matplotlib 绘制一条线?
- python - Python 中的 Google 翻译 API
- windows - tensorflow 2.2 gpu 支持 Windows
- bash - while 循环中的 sed 命令不写入输出
- excel - 沿侧单元格引用使用 Excel 的转换功能
- python - 如何使用 Connexion 在 Flask 的 GET 请求中接受数组参数
- nginx - NGINX 反向代理到 https 上游
- java - 像 Excel 电子表格一样打印 ArrayList
- casting - Ecto.Changeset.cast/4 中没有函数子句匹配
- spring-boot - JHipster H2 DB 非管理员用户