Apache Solr严重错误

时间:2014-03-11 17:25:51

标签: solr solr4

好的,我在webfaction上运行Apache Tomcat的单核Solr设置。经过一番努力,我让Tomcat认出了Solr,然而,当我导航到Solr管理员时,我收到了这个错误:

Mar 11, 2014 5:04:22 PM org.apache.solr.common.SolrException log
SEVERE: org.apache.solr.common.SolrException: Error loading class      'solr.VelocityResponseWriter'
    at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:389)
    at org.apache.solr.core.SolrCore.createInstance(SolrCore.java:425)
    at org.apache.solr.core.SolrCore.createInitInstance(SolrCore.java:447)
    at org.apache.solr.core.SolrCore.initPlugins(SolrCore.java:1556)
    at org.apache.solr.core.SolrCore.initPlugins(SolrCore.java:1550)
    at org.apache.solr.core.SolrCore.initPlugins(SolrCore.java:1583)
    at org.apache.solr.core.SolrCore.initWriters(SolrCore.java:1466)
    at org.apache.solr.core.SolrCore.<init>(SolrCore.java:556)
    at org.apache.solr.core.CoreContainer.create(CoreContainer.java:463)
    at org.apache.solr.core.CoreContainer.load(CoreContainer.java:316)
    at org.apache.solr.core.CoreContainer.load(CoreContainer.java:207)
    at org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:130)
    at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:94)
    at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:279)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:260)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:105)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4809)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5485)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:670)
    at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1839)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:701)
Caused by: java.lang.ClassNotFoundException: solr.VelocityResponseWriter
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
    at java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:615)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:270)
    at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:373)
    ... 29 more

我对Java一无所知,在这个级别上对Linux,Apache或Tomcat的经验很少。我尝试过搜索文档,但只能找到需要安装的VelocityResponseWriter的模糊引用。

任何人都可以帮我指出正确的方向吗?

1 个答案:

答案 0 :(得分:0)

你的tomcat应用程序可能缺少这些罐子:

  • solr-4.5.0/dist/solr-velocity-4.5.0.jar
  • solr-4.5.0/contrib/velocity/lib/velocity-1.7.jar
  • solr-4.5.0/contrib/velocity/lib/velocity-tools-2.0.jar
  • solr-4.5.0/contrib/velocity/lib/commons-beanutils-1.7.0.jar
  • solr-4.5.0/contrib/velocity/lib/commons-collections-3.2.1.jar

您也可以从VelocityResponseWriter中排除solrcofig.xml

或者您可以在solrcofig.xml中修复jar包含。尝试修复这些配置行以查找jar文件:

<lib dir="../../../contrib/velocity/lib" regex=".*\.jar" />
<lib dir="../../../dist/" regex="solr-velocity-\d.*\.jar" />