java - solrj 5.5.0 和 java 1.7 出现验证错误

标签 java solr solrj verifyerror

执行 HttpSolrClient solr = new HttpSolrClient("http://localhost:8983/solr/mycore") 时出现 java.lang.VerifyError: Cannot acquires from Final class 异常;

我使用 SolrJ 5.5.0 和 Java 1.7。除此之外,我使用 commons-httpclient 3.1。这是我得到的详细错误:

Handler processing failed; nested exception is java.lang.VerifyError:     org/apache/http/params/SyncBasicHttpParams] with root cause
java.lang.VerifyError: org/apache/http/params/SyncBasicHttpParams
at org.apache.http.impl.client.DefaultHttpClient.createHttpParams(DefaultHttpClient.java:158)
at org.apache.http.impl.client.AbstractHttpClient.getParams(AbstractHttpClient.java:466)
at org.apache.solr.client.solrj.impl.HttpClientUtil.setFollowRedirects(HttpClientUtil.java:290)
at org.apache.solr.client.solrj.impl.HttpClientConfigurer.configure(HttpClientConfigurer.java:58)
at org.apache.solr.client.solrj.impl.HttpClientUtil.configureClient(HttpClientUtil.java:149)
at org.apache.solr.client.solrj.impl.HttpClientUtil.createClient(HttpClientUtil.java:125)
at org.apache.solr.client.solrj.impl.HttpSolrClient.<init>(HttpSolrClient.java:188)
at org.apache.solr.client.solrj.impl.HttpSolrClient.<init>(HttpSolrClient.java:161)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1852)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

最佳答案

我的 .m2 文件夹中有 2 个 httpcore 库(来自 axis2 1.6.2 的 httpcore 4.0 和来自 solrj 5.5.0 的 httpcore 4.4.1)。删除 httpcore 4.0 帮助我解决了这个问题。原因是httpcore 4.0中的org.apache.http.params.BasicHttpParams类是final类。

关于java - solrj 5.5.0 和 java 1.7 出现验证错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39912018/

相关文章:

java - 在缓冲图像上绘图

java - ConcurrentHashMap 的弱一致迭代器

maven - SolrJ 与 Maven

windows - 在 Windows 7 上,如何找到给定进程号的进程?

java - Solrj 将我的日期从 UTC 格式化为 CEST

java - 我可以对较低版本(5.xx 或 4.xx)的 solr 服务器使用 solrj (版本 - 6.6.3 )客户端库吗?

java - 当我使用 hibernate 类在 MySQL 中选择一行时,它会自动进行更新

Java 8 正则表达式 : a capturing group in a pattern doesn't match, 但整个模式确实匹配

solr - 是否可以在 solr 中增强 mlt 查询?

java - 如何使用 SolrJ 发布 TrieField 字段?