我正在尝试在我的centos生产服务器上的tomcat上启动solr。我已经在当地工作了。但是,当我尝试访问管理员时,我收到404错误(路径中缺少核心名称)。我只是尝试首先使用单核设置示例solr应用程序,我还没有从我的本地工作部署一行代码(这只是为了确保基本设置正确完成)。我开始关注登录(catalina.out和catalina.log),发现其中记录了以下错误:
SEVERE: Error processing TLD files for context path /manager
java.lang.IllegalArgumentException: URI "file:./" is not hierarchical
SEVERE: Error processing TLD files for context path /solr
java.lang.IllegalArgumentException: URI "file:./" is not hierarchical
SEVERE: Error in xpath:javax.xml.xpath.XPathExpressionException: multiple nodes in node-set
SEVERE: org.apache.solr.common.SolrException: Error in xpath:/config/indexConfig/text() for solrconfig.xml
Caused by: javax.xml.xpath.XPathExpressionException: multiple nodes in node-set
按此顺序。我完全关注了这个问题,并在必要时添加了相关路径。我也可以发布配置文件,但是因为它们只是示例(开箱即用),所以它不会有任何不同。
我根本不熟悉java,也无法弄清楚错误是什么。
这是服务器的配置:
<Context allowlinking="true" crosscontext="true" debug="0" docbase="/var/lib/tomcat6/my/solr.war" priviledged="true">
<Environment name="solr/home" override="true" type="java.lang.String" value=" </var/lib/tomcat6/solr/>">
</Context>
答案 0 :(得分:4)
因此,经过几个小时的挖掘catalina.out,错误与java版本有关。我在服务器上安装了java 1.5,在本地安装了1.6。在生产服务器上切换到1.6就可以了。