2014-09-23 101 views
0

原來決心我的$ {}的user.home可變我有一個JHipster生成的應用程序與YAML屬性文件看起來像這樣:爲什麼在編譯的時候

storage: 
     location: ${user.home}/my/folder 

我的問題是變量$ {用戶。主頁}在構建時解決,當我運行mvn package(在詹金斯)。因此,該屬性已在解決的結果工件中解決,因此,當我在我的服務器上進行部署時,該路徑包含用戶Jenkins的已解析主目錄。 有人知道誰在做這個,爲什麼?我期待這個變量能在運行時被解決。

謝謝。 瓦倫丁

回答

0

我不完全確定JHipster是如何建立在Spring Boot之上的,但我的猜測是它是在構建時擴展${user.home}的Maven資源過濾。它的enabled by defaultspring-boot-starter-parent代替application.propertiesapplication.yamlsrc/main/resources

Spring Boot issue包含一些更多的信息,更改配置的細節一起,你可能想使讓${…}條目不再過濾:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-resources-plugin</artifactId> 
    <version>2.6</version> 
    <configuration> 
     <encoding>UTF-8</encoding> 
     <delimiters> 
      <delimiter>@</delimiter> 
     </delimiters> 
     <useDefaultDelimiters>false</useDefaultDelimiters> 
    </configuration> 
</plugin>