簡體   English   中英

Spring Boot - 部署到Tomcat時放置屬性文件的位置?

[英]Spring Boot - Where to put properties files when deploying to Tomcat?

我已經使用Spring Boot幾周了,而且我習慣使用application.properties文件。 我可以使用它進行簡單的部署,並與java jarmvn spring-boot:run

現在我正在嘗試將我的應用程序部署到Tomcat 8.0.15應用程序服務器。 我一直在閱讀文檔,但我無法部署war文件,因為Tomcat無法找到這個着名的application.properties文件。 我的觀點是,如果我想把這個文件排除在war ,那么在我的Tomcat安裝中我應該把它自動讀取?

如果您以后不想更改它,只需將它放在類路徑的根目錄中,例如,如果它是Maven項目,那么在里面

<project-folder>/src/main/java/

如果您想稍后更改它而不重建WAR,那么在Tomcat屬性文件中

catalina.properties 

shared.loader=

這使得在部署的應用程序可訪問等號后列出的屬性文件。 更好地使用絕對路徑。

順便說一句,我現在會選擇使用基於注釋的配置,但話說再說一次,如果沒有重建WAR,它就沒有變化的舒適感。

Spring加載屬性

   1) A /config subdir of the current directory.
   2) The current directory
   3) A classpath /config package
   4) The classpath root 

請參閱docs(23.2應用程序屬性文件): http//docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#boot-features-external-config-application-property-files

對戰爭來說這應該是一樣的(類路徑根看起來對我來說最好)。

您可以在catalina.sh/catalina.batch或setEnv.bat / setEnv.sh中提供屬性文件的位置作為“JAVA_OPTS”的一部分。 設置JAVA_OPTS = -Dspring.config.location = file:/ D:/Appconfig/application.properties

僅供參考:如果外部戰爭並且如上所述定義,則application.yaml將不會被spring boot加載。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM