2017-05-04 11 views
1

私は比較的初心者ですが、私は外部構成ファイルを受け入れるアプリケーションを構築しようとしています。私はそれを春のツールスイートで書いて、Mavenでコンパイルしています。Spring Tool Suite/Mavenは私の.propertiesファイルを削除します

私はすべてのクラスと.jarファイルが生成されるターゲットフォルダを含むパッケージを含むsrc/main/javaフォルダを持っています。

私は、外部の構成上の彼らのガイドを使用しようとしている:https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html

私は>私は「application.propertiesに名前を付けましょう新しい>ファイルを./targetに/ configファイルを作成し、右クリックします。 "一度私はそれと対話しようとすると、私はすぐにこれが派生ファイルであることを警告しています。 application.propertiesで

、私は置く:

spring.application.name = "hello" 

静的クラスの別の場所でファイル構造で、私が入れ:

@Value("${name}") 
public static String name; 

私は、だけでなく、パッケージ化の.jarを実行すると.propertiesファイルと/ configフォルダが削除されることがあります。

Mavenが自分の.propertiesファイルを削除するために何を壊したのですか?

+0

'src /'おそらく 'src/main/resources'の適切な場所に置く必要があります。私が知っている限り、ターゲットディレクトリはかなり頻繁にクリーニングされます。 – CollinD

+0

プロジェクトでは.propertiesファイルを配置していますか? – techtrainer

答えて

0

targetフォルダにファイルを作成すると、そのファイルが随時削除されます。ターゲットフォルダ内のコンテンツは、ビルドの結果を格納することが目的であるため、Mavenによって時折破棄/作成されます。例でclean packageコマンドを発行すると、Mavenはその内容をtargetに破棄して、アプリケーションを再構築します。私はあなたがあなたのプロジェクトでそれを保つことができるが、その後、あなたのプロパティファイルをどのように把握する必要がありますSOUあなたの特性がscr/mainフォルダ内のファイルを作成する必要があると考えてい

があるので、アプリケーションのクラスパス

に表示されますjarファイルを実行している場合は、javaコマンドラインにパラメータを追加し(IDEで実行コンフィギュレーションをチェックしてください)、プロパティファイルを保存するフォルダを追加します。

0

WEB-INFフォルダにプロパティファイルを作成し、プロパティファイルのパスとBeanをApplicationContext.xmlに設定する必要があります。

<bean id="configProperties" 
    class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 

    <property name="location" value="WEB-INF/test-config.properties" /> 

</bean> 
0

ファイルをターゲットフォルダに置くと、実際には削除されます。

関連する問題