2017-07-08 14 views
1

私のjarファイル以外のディレクトリにある構成ファイルに問題があります。@PropertySourceが存在しないためオープンできません

私は@PropertySourceをプロパティの読み込みに使用します。

@PropertySource(ignoreResourceNotFound = true, value = "${ext.properties.dir:classpath:}/properties.properties") 

私は、次のコマンドを使用してjarファイルを実行しよう:

java -jar import-0.0.1-SNAPSHOT.jar -Dext.properties.dir=file:/C:\Users\Admin\Desktop\ 

ログに次のエラープリング:プロパティの場所

プロパティの場所 [$ {ext.properties.dir:クラスパス:}/properties.properties]解決できません: クラスパスリソース[properties.properties]が開けません が存在しません

このエラーを解決するにはどうすればよいですか?

--spring.config.location=file:/path/location/file-name.properties 

最後の命令は次のようになります:

java -jar import-0.0.1-SNAPSHOT.jar --spring.config.location=file:C:\Users\Admin\Desktop\import.properties 
+0

これは役に立ちます - https://stackoverflow.com/questions/33184807/override-properties-file-in-spring-webapp-at-runtime – Arpit

+0

@Arpit、私は答えと同じ設定をしましたが、私は得ました'存在しないため開けません。 ' –

+0

あなたは' spring mvc'または 'spring boot'を使っていますか? – elmigue017

答えて

1

クラスパス上のapplication.properties。明示的な@PropertySourceアノテーションは必要ありません。 @PropertySourceには、パス内のSPELを解決する機能がありません。これは、表示されるエラーメッセージから明らかです。

src/main/resources/application.propertiesを使用してください。外部ファイルを使用する場合は、@ juan-calvopina-mのようにspring.config.locationを使用してください。

+0

' spring.config.location'は '@ PropertySource'を手伝ってくれません –

+0

同じエラーが出たのですか違うのですか?あなたは@ AbhijitSarkarの提案をチェックしましたか? –

+0

@JUANCALVOPINAM、ありがとう、 '--spring.config.location'はうまく動作します –

1

春ブーツを探し、私はあなたがこの環境プロパティを使用しようとすることができspring documentationによると、アプリケーションを使用していることを見た

関連する問題