2016-09-28 7 views
0

私のSpringブートプロジェクトでは、私はのgradleの次の断片を持っています。ぼかしエクスポートされたプロパティは、春のgradle bootRunで動作しません

processResources { 
    filesMatching("**/application.properties") { 
     expand(project.properties) 
    } 
} 

マイapplication.propertiesは、この(スニペット)かなりよく作品

app.version = $ {} jar.version

のように見えます。私は @valueで春のクラスでGradleのpropetiesで動作することができ、さらには

番目にthymeleafでそれらにアクセスすることができます。テキスト= "$ {@ environment.getProperty( 'app.version')}

しかし、今問題:私は「GradleのbootRun」と同じプロジェクトを実行すると、私はこの取得しています:

Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'jar.version' in string value "${jar.version}" 
     at org.springframework.util.PropertyPlaceholderHelper.parseStringValue(PropertyPlaceholderHelper.java:174) ~[spring-core-4.3.3.RELEASE.jar:4.3.3.RELEASE] 

を私はGradleののbootRunがprocessResourcesまたはそのような何かを使用しないことによって動作する方法についての何かを想定?

質問は、どのように私はこれを動作させることができます。私はbootRunを使ってあきらめてはいけません。

+0

ここではgithub.com/spring-projects/spring-boot/issues/1739で説明していますが、私の問題の解決策は見当たりません。これらの値がbootRunに表示されないのであれば心配しないでくださいが、私のアプリケーションは少なくとも動かなければなりません。 – Marc

答えて

1

実際のものが見つからない場合に使用するデフォルト値を指定しますか?

@Value("${...:defaultValue}") 
+0

これはjavaクラスの$ Valueでは問題ありませんが、th:text = "$ {@ environment.getProperty( 'app.version')}で問題を解決しませんでしたが、この問題を回避することができます。 – Marc

関連する問題