[英]Spring Boot - Where to put properties files when deploying to Tomcat?
我已經使用Spring Boot
幾周了,而且我習慣使用application.properties
文件。 我可以使用它進行簡單的部署,並與java jar
或mvn 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.