2013-03-25 123 views
0

當我從IDE部署我.war文件到Tomcat我定義:的Apache Tomcat環境變量

-Dsolr.solr.home=/home/vicita/Desktop/lucene-solr/solr/solr_h 
-Dsolr.data.dir=/home/vicita/Desktop/lucene-solr/solr/solr_h/data 

然而,當我把它部署到遠程機器,我需要定義的參數。我按照書上說的,我必須定義到$ TOMCAT_HOME/conf目錄/卡塔利娜/本地主機的XML文件中:

<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

solr在遠程機器上的安裝位置?路徑/ usr/share/solr_h是否存在,並且用戶tomcat運行時是否擁有該文件夾的權限? – Jayendra 2013-03-26 03:53:12

回答

0

localhost下的xml文件與我的.war文件名稱不同。我給它分配了與.war相同的名字,它已經解決了。