26

test1.properties外部フォルダにあるファイルを読み込もうとしています。

ここに私の春の設定ファイルがあります:

<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>

をフォルダに入れるとtest1.propertiestomcat7/lib読むことができます。ただし、別のディレクトリに配置したいtomcat7/env/test1.properties

へのパスを追加しましたconf/catalina.properties

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

これは機能していません。助けてください


解決策: わかりました..最終的に修正しました..私はずっとそれを正しく行っていました..問題を引き起こしたのは私のIDEでした。IDE がcatalina.propertiesファイルの変更を認識していませんでした。IDE でサーバー構成を削除して、再構成する必要がありました。

これらのリンクは一般的に役に立ちました:

4

3 に答える 3

3

bin ディレクトリにある setenv.sh を使用します。ファイルが存在しない場合は、作成します。クラスパスに何かを追加するには、次の構文を使用します。

CLASSPATH=/yourdir/

Windows の場合: setenv.bat

解決策: tomcat bin フォルダーの下に setenv.bat ファイルを作成すると、WINDOWS で役立ちました。

于 2014-11-07T20:19:12.170 に答える
0

war または ear の外にファイルを保持する意図がある場合は、コンパイルして war を再度作成することなくファイルを更新できます。ファイルを編集してサーバーを再起動するだけです。サーバーの外であっても、任意の外部フォルダーに保管し、春に絶対パスを指定します。

<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>

最善の方法は、この / パスを Unix/Linux のルートで指定すると、Windows でも同じように機能します。サーバーがインストールされているディレクトリにファイルを保持するだけで済みます。D ドライブの Tomcat のように、それを D:\someexternal\dir に保持すると、上記のコードもそこで正常に動作します

于 2014-12-05T17:53:52.727 に答える