创建集合 Solr Cloud - 服务器错误导致:java.lang.NoClassDefFoundError:org



我正在尝试在Solr Cloud 7.7.1上创建一个集合,但是遇到了问题。

采取的步骤:

  • 将 solrconfig.xml 和 schema.xml 上传到 Zookeeper
  • 通过ZKCLI将Solr.XML上传到Zookeeper
  • 在 Solr/Home 中创建了一个 lib 目录,并在 lib 目录中创建了一个自定义 JAR 文件。

尝试通过 URL 创建集合时

我得到以下输出。

{
"responseHeader":{
"status":0,
"QTime":2317},
"failure":{
"192.168.56.1:8983_solr":"org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException:Error from server at http://192.168.56.1:8983/solr: Expected mime type application/octet-stream but got text/html. <html>n<head>n<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>n<title>Error 500 Server Error</title>n</head>n<body><h2>HTTP ERROR 500</h2>n<p>Problem accessing /solr/admin/cores. Reason:n<pre>    Server Error</pre></p><h3>Caused by:</h3><pre>java.lang.NoClassDefFoundError: org/apache/lucene/analysis/util/TokenizerFactoryrntat java.lang.ClassLoader.defineClass1(Native Method)rntat java.lang.ClassLoader.defineClass(ClassLoader.java:763)rntat java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)rntat java.net.URLClassLoader.defineClass(URLClassLoader.java:468)rntat java.net.URLClassLoader.access$100(URLClassLoader.java:74)rntat java.net.URLClassLoader$1.run(URLClassLoader.java:369)rntat java.net.URLClassLoader$1.run(URLClassLoader.java:363)rntat java.security.AccessController.doPrivileged(Native Method)rntat java.net.URLClassLoader.findClass(URLClassLoader.java:362)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:424)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:357)rntat org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:556)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:411)rntat java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:817)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:411)rntat java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:817)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:357)rntat java.lang.Class.forName0(Native Method)rntat java.lang.Class.forName(Class.java:348)rntat org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:541)rntat org.apache.solr.core.SolrResourceLoader.newInstance(SolrResourceLoader.java:626)rntat org.apache.solr.schema.FieldTypePluginLoader$2.create(FieldTypePluginLoader.java:356)rntat org.apache.solr.schema.FieldTypePluginLoader$2.create(FieldTypePluginLoader.java:349)rntat org.apache.solr.util.plugin.AbstractPluginLoader.load(AbstractPluginLoader.java:152)rntat org.apache.solr.schema.FieldTypePluginLoader.readAnalyzer(FieldTypePluginLoader.java:376)rntat org.apache.solr.schema.FieldTypePluginLoader.create(FieldTypePluginLoader.java:95)rntat org.apache.solr.schema.FieldTypePluginLoader.create(FieldTypePluginLoader.java:53)rntat org.apache.solr.util.plugin.AbstractPluginLoader.load(AbstractPluginLoader.java:152)rntat org.apache.solr.schema.IndexSchema.readSchema(IndexSchema.java:481)rntat org.apache.solr.schema.IndexSchema.&lt;init&gt;(IndexSchema.java:180)rntat org.apache.solr.schema.IndexSchemaFactory.create(IndexSchemaFactory.java:56)rntat org.apache.solr.schema.IndexSchemaFactory.buildIndexSchema(IndexSchemaFactory.java:75)rntat org.apache.solr.core.ConfigSetService.createIndexSchema(ConfigSetService.java:119)rntat org.apache.solr.core.ConfigSetService.getConfig(ConfigSetService.java:92)rntat org.apache.solr.core.CoreContainer.getConfigSet(CoreContainer.java:1227)rntat org.apache.solr.core.CoreContainer.createFromDescriptor(CoreContainer.java:1174)rntat org.apache.solr.core.CoreContainer.create(CoreContainer.java:1088)rntat org.apache.solr.handler.admin.CoreAdminOperation.lambda$static$0(CoreAdminOperation.java:92)rntat org.apache.solr.handler.admin.CoreAdminOperation.execute(CoreAdminOperation.java:360)rntat org.apache.solr.handler.admin.CoreAdminHandler$CallInfo.call(CoreAdminHandler.java:395)rntat org.apache.solr.handler.admin.CoreAdminHandler.handleRequestBody(CoreAdminHandler.java:180)rntat org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:199)rntat org.apache.solr.servlet.HttpSolrCall.handleAdmin(HttpSolrCall.java:735)rntat org.apache.solr.servlet.HttpSolrCall.handleAdminRequest(HttpSolrCall.java:716)rntat org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:496)rntat org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:395)rntat org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:341)rntat org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1602)rntat org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)rntat org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)rntat org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)rntat org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)rntat org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)rntat org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1588)rntat org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)rntat org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)rntat org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)rntat org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)rntat org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1557)rntat org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)rntat org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)rntat org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)rntat org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220)rntat org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)rntat org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)rntat org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:335)rntat org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)rntat org.eclipse.jetty.server.Server.handle(Server.java:502)rntat org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)rntat org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)rntat org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)rntat org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)rntat org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)rntat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)rntat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)rntat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)rntat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)rntat org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)rntat org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)rntat org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)rntat java.lang.Thread.run(Thread.java:748)rnCaused by: java.lang.ClassNotFoundException: org.apache.lucene.analysis.util.TokenizerFactoryrntat java.net.URLClassLoader.findClass(URLClassLoader.java:382)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:424)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:357)rnt... 81 morern</pre>n<h3>Caused by:</h3><pre>java.lang.ClassNotFoundException: org.apache.lucene.analysis.util.TokenizerFactoryrntat java.net.URLClassLoader.findClass(URLClassLoader.java:382)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:424)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:357)rntat java.lang.ClassLoader.defineClass1(Native Method)rntat java.lang.ClassLoader.defineClass(ClassLoader.java:763)rntat java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)rntat java.net.URLClassLoader.defineClass(URLClassLoader.java:468)rntat java.net.URLClassLoader.access$100(URLClassLoader.java:74)rntat java.net.URLClassLoader$1.run(URLClassLoader.java:369)rntat java.net.URLClassLoader$1.run(URLClassLoader.java:363)rntat java.security.AccessController.doPrivileged(Native Method)rntat java.net.URLClassLoader.findClass(URLClassLoader.java:362)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:424)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:357)rntat org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:556)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:411)rntat java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:817)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:411)rntat java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:817)rntat java.lang.ClassLoader.loadClass(ClassLoader.java:357)rntat java.lang.Class.forName0(Native Method)rntat java.lang.Class.forName(Class.java:348)rntat org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:541)rntat org.apache.solr.core.SolrResourceLoader.newInstance(SolrResourceLoader.java:626)rntat org.apache.solr.schema.FieldTypePluginLoader$2.create(FieldTypePluginLoader.java:356)rntat org.apache.solr.schema.FieldTypePluginLoader$2.create(FieldTypePluginLoader.java:349)rntat org.apache.solr.util.plugin.AbstractPluginLoader.load(AbstractPluginLoader.java:152)rntat org.apache.solr.schema.FieldTypePluginLoader.readAnalyzer(FieldTypePluginLoader.java:376)rntat org.apache.solr.schema.FieldTypePluginLoader.create(FieldTypePluginLoader.java:95)rntat org.apache.solr.schema.FieldTypePluginLoader.create(FieldTypePluginLoader.java:53)rntat org.apache.solr.util.plugin.AbstractPluginLoader.load(AbstractPluginLoader.java:152)rntat org.apache.solr.schema.IndexSchema.readSchema(IndexSchema.java:481)rntat org.apache.solr.schema.IndexSchema.&lt;init&gt;(IndexSchema.java:180)rntat org.apache.solr.schema.IndexSchemaFactory.create(IndexSchemaFactory.java:56)rntat org.apache.solr.schema.IndexSchemaFactory.buildIndexSchema(IndexSchemaFactory.java:75)rntat org.apache.solr.core.ConfigSetService.createIndexSchema(ConfigSetService.java:119)rntat org.apache.solr.core.ConfigSetService.getConfig(ConfigSetService.java:92)rntat org.apache.solr.core.CoreContainer.getConfigSet(CoreContainer.java:1227)rntat org.apache.solr.core.CoreContainer.createFromDescriptor(CoreContainer.java:1174)rntat org.apache.solr.core.CoreContainer.create(CoreContainer.java:1088)rntat org.apache.solr.handler.admin.CoreAdminOperation.lambda$static$0(CoreAdminOperation.java:92)rntat org.apache.solr.handler.admin.CoreAdminOperation.execute(CoreAdminOperation.java:360)rntat org.apache.solr.handler.admin.CoreAdminHandler$CallInfo.call(CoreAdminHandler.java:395)rntat org.apache.solr.handler.admin.CoreAdminHandler.handleRequestBody(CoreAdminHandler.java:180)rntat org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:199)rntat org.apache.solr.servlet.HttpSolrCall.handleAdmin(HttpSolrCall.java:735)rntat org.apache.solr.servlet.HttpSolrCall.handleAdminRequest(HttpSolrCall.java:716)rntat org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:496)rntat org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:395)rntat org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:341)rntat org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1602)rntat org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)rntat org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)rntat org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)rntat org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)rntat org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)rntat org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1588)rntat org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)rntat org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)rntat org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)rntat org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)rntat org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1557)rntat org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)rntat org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)rntat org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)rntat org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220)rntat org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)rntat org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)rntat org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:335)rntat org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)rntat org.eclipse.jetty.server.Server.handle(Server.java:502)rntat org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)rntat org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)rntat org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)rntat org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)rntat org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)rntat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)rntat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)rntat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)rntat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)rntat org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)rntat org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)rntat org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)rntat java.lang.Thread.run(Thread.java:748)rn</pre>nn</body>n</html>n"
}
}

不知道是什么原因。任何帮助都非常感谢。

报告java.lang.NoClassDefFoundError: org/apache/lucene/analysis/util/TokenizerFactory被视为运行时 env 无法在类路径中找到TokenizerFactory类。通常,TokenizerFactory.class文件将存在于位于目录下的lucene-analyzers-common-<verion>.jarcontrib//prometheus-exporter/lucene-libs/

您可以确保此类 jar 存在于上述目录下,并检查solrconfig.xml是否包含 lib 标记以将目录/jar 添加到类路径中。

例如

$ grep lucene-libs  solrconfig.xml
<lib dir="${solr.install.dir:../../../..}/contrib/prometheus-exporter/lucene-libs" regex=".*.jar" />

与我机器上的多个 Solr 有关的问题,它试图从不同的 Solr 安装加载 Jars。删除本地计算机上的任何其他Solr应用程序,现在按预期工作。

感谢您的帮助。

相关内容

最新更新