我在Tomcat 7的conf/Catalina/localhost中有以下configuration文件:
<Context docBase="webapps/solr.war" debug="0" crossContext="true" > <Environment name="solr/home" type="java.lang.String" value="/opt/solr/home" override="true" /> <Environment name="data/dir" type="java.lang.String" value="/var/lib/solr" override="true" /> </Context>
在那里我想分开我的solr.home从data.dir 。
我已经testing了上面的configuration文件,但似乎没有工作。
是否有可能使用这种XMLconfiguration文件?
我已经检查了GitHub ,有一些configuration文件,他们在那里,但我不能让它工作。
我不这么认为。
在
solrconfig.xml文件被加载的时候,工作很久以前就已经完成了,以支持系统属性replace,但是我不认为这也被广义地支持JNDI值(这是上下文文件集中的<Environment/>标记)。我实际上有一个solr configparsing器的补丁,它允许你在
solrconfig.xml使用上下文环境variables。
克里斯·霍斯特 ( Chris Hostetter) (Hoss)于2010年在solr用户组发表了一篇文章 。
我不认为有可能在没有修补Solr的情况下使用Tomcat上下文环境条目作为数据目录。 看来只有solr/homevariables工作正常。
更好的方法是使用应位于Solr conf/ home目录(或: collection1/conf )或Tomcat WEB-INF/目录中的JVM系统属性文件( solrcore.properties ),并使用以下条目:
solr.data.dir=/var/lib/solr
通过使用和重新加载您的应用程序或重新启动您的Tomcat服务重新加载Java属性。
另一种方法是使用solr.xml (在Solr 4.x中),通过设置不同的instanceDir和dataDir来分隔dataDir和configuration文件。