繁体   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