我正在使用Java从Solr 6.0.1迁移到Solr 8.2.0。 我浏览过主要更改页面:https://lucene.apache.org/solr/guide/8_1/major-changes-in-solr-7.html#major-changes-in-solr-7 和 https://lucene.apache.org/solr/guide/8_1/major-changes-in-solr-8.html#major-changes-in-solr-8
我更正了代码,并相应地修改了架构。
我可以启动我的Solr实例,并且看到不同的内核,如6.0.1版本中所示。所以一切看起来都很好。
但是每当我查询Solr时,我都会遇到异常。
httpSolrClient.deleteByQuery("*:*")
导致此异常:
java.lang.NoClassDefFoundError: org/apache/zookeeper/server/ByteBufferInputStream
我正在使用maven处理所有依赖关系,并且在版本8.2.0中都具有solr-core和solrJ。
这是stackTrace:
java.net.URLClassLoader.findClass(URLClassLoader.java:381)
java.lang.ClassLoader.loadClass(ClassLoader.java:424)
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338)
java.lang.ClassLoader.loadClass(ClassLoader.java:357)
org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(HttpSolrClient.java:673)
org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:262)
org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:245)
org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:211)
org.apache.solr.client.solrj.SolrClient.deleteByQuery(SolrClient.java:940)
org.apache.solr.client.solrj.SolrClient.deleteByQuery(SolrClient.java:903)
org.apache.solr.client.solrj.SolrClient.deleteByQuery(SolrClient.java:918)
如果您有任何线索...谢谢!