当我从IDE中将.war文件部署到Tomcat时,我定义了:
-Dsolr.solr.home=/home/vicita/Desktop/lucene-solr/solr/solr_h
-Dsolr.data.dir=/home/vicita/Desktop/lucene-solr/solr/solr_h/data
然而,当我将它部署到远程机器时,我必须定义这些参数。我遵循的这本书说我必须在xml文件中将其定义为$ TOMCAT_HOME / conf / Catalina / localhost:
<Context path="/solr" docBase="/usr/share/tomcat/webapps/solr.war" debug="0" crossContext="true">
<Environment name="solr/home" type="java.lang.String" value="/usr/share/solr_h/" override="true"/>
</Context>
顺便说一下:
/usr/share/solr_h
是我应该提及的目录。我想知道的第一件事我没有在这里定义像solr.solr.home这样的变量吗?
我的.war无法找到该文件夹并抛出错误。我试图创建setenv.sh并放置:
-Dsolr.solr.home=/usr/share/solr_h
-Dsolr.data.dir=/usr/share/solr_h/data
然而,当Tomcat启动它时说:
/usr/share/tomcat/bin/setenv.sh: line 1: -Dsolr.solr.home=/usr/share/solr_h: No such file or directory
/usr/share/tomcat/bin/setenv.sh: line 2: -Dsolr.data.dir=/usr/share/solr_h/data: No such file or directory
Using CATALINA_BASE: /usr/share/tomcat
Using CATALINA_HOME: /usr/share/tomcat
Using CATALINA_TMPDIR: /usr/share/tomcat/temp
Using JRE_HOME: /usr/java/default
Using CLASSPATH: /usr/share/tomcat/bin/bootstrap.jar:/usr/share/tomcat/bin/tomcat-juli.jar
有任何想法要解决它吗?
答案 0 :(得分:0)
localhost下的xml文件与.war文件的名称不同。我给它分配了同名的.war's,它已经解决了。