2013-07-16 5 views
22

Ich versuche, die Datei test1.properties zu lesen, die sich in einem externen Ordner befindet.Hinzufügen eines Verzeichnisses zu Tomcat Classpath und Lesen der Eigenschaftendatei im Frühjahr

hier ist meine Feder-Konfigurationsdatei:

<bean id="propertyConfigurer3" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="ignoreUnresolvablePlaceholders" value="true"/> 
    <property name="locations"> 
     <list> 
      <value>classpath:test.properties</value> 
      <value>classpath:test1.properties</value> 
     </list> 
    </property> 
</bean> 

wenn ich die test1.properties im tomcat7/lib Ordner ablegen, ich bin in der Lage, es zu lesen. Allerdings möchte ich es in ein anderes Verzeichnis platzieren als tomcat7/env/test1.properties

Ich habe den Pfad zu der der conf/catalina.properties hinzugefügt:

common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,${catalina.home}/env 

Diese seine nicht funktioniert, bitte helfen


Lösung: Ok .. endlich behoben .. Ich hatte es die ganze Zeit richtig gemacht .. es war meine IDE, die das Problem verursacht hat. Die IDE nahm die Änderungen in der Datei catalina.properties nicht auf. Ich musste die Serverkonfiguration in meiner IDE löschen und neu konfigurieren.

diese Verbindungen waren hilfreich allgemein:

+4

Sie könnten auch die 'Datei verwenden Hinzufügen:' Präfix in eine Datei zu verweisen. – Bart

+0

mögliches Duplikat von [Probleme mit Klassenpfad zwischen Eclipse, Tomcat und JUnit in der Spring 3 App] (http://stackoverflow.com/questions/4179767/problems-with-classpath-between-eclipse-tomcat-and-junit-in- spring-3-app) –

+0

Die Frage wird in den Kommentaren beantwortet. Siehe http://meta.stackoverflow.com/questions/251597/question-with-no-answers-but-issue-solved-in-the-comments –

Antwort

1

Verwenden setenv.sh im Verzeichnis ist. Wenn die Datei nicht existiert, erstellen Sie sie. Um etwas zu dem Classpath verwenden Sie die folgende Syntax hinzu:

CLASSPATH=/yourdir/ 

Für Fenster: setenv.bat

0

Wenn Ihre Absicht Datei außerhalb des Krieges oder Ohr zu halten, so dass Sie es ohne compling aktualisieren und wieder Krieg schaffen. Bearbeiten Sie die Datei und starten Sie den Server neu. Bewahren Sie es in einem beliebigen externen Ordner auf, auch außerhalb des Servers, und geben Sie im Frühjahr den absoluten Pfad an.

<bean id="propertyConfigurer3" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
<property name="ignoreUnresolvablePlaceholders" value="true"/> 
<property name="locations"> 
    <list> 
     <value>classpath:test.properties</value> 
     <value>**file:/someexteranal/dir/test1.properties**</value> 
    </list> 
</property> 

Das Beste, was Sie diesen/Pfad mit root in Unix/Linux und gleicht in Fenstern arbeiten geben können, muß nur Datei im Verzeichnis zu halten, wo der Server installiert ist. Wie Ihr Tomcat in Laufwerk D, dann behalten Sie es in D: \ someexternal \ dir und oben Code funktioniert auch dort

2

Ok .. endlich behoben .. Ich hatte es richtig gemacht die ganze Zeit .. es war meine IDE, die das Problem verursacht hat. Die IDE hat die Änderungen in der Datei catalina.properties nicht übernommen. Ich musste die Serverkonfiguration in meiner IDE löschen und neu konfigurieren.

diese Verbindungen waren hilfreich allgemein:

ein Verzeichnis tomcat Classpath

http://www.mulesoft.com/tomcat-classpath#solutions

Verwandte Themen