java - springboot war放入tomcat启动怎么指定使用外部application.properties
问题描述
springboot war放入tomcat启动怎么指定使用外部application.properties
问题解答
回答1:Resource支持 file:d:/myspring/banner.txt 这种方式,那么 @PropertySource('file:///user/myspring/application.properties') 应该也是可以的,可以试下,我没尝试过。
回答2:可以在tomcat的bin目录下的catalina.sh文件里面,添加环境变量例如:tomcat目录名为demo。
首先,修改catalina.sh文件在230行左右
f [ -z '$JSSE_OPTS' ] ; then JSSE_OPTS='-Djdk.tls.ephemeralDHKeySize=2048'fiJAVA_OPTS='$JAVA_OPTS $JSSE_OPTS'#添加配置文件路径#=======================WEB APP===============================JAVA_OPTS='$JAVA_OPTS -DWEB APP_PROPERTY_FILE=/home/tomcat/demo/conf/WebProperties.properties'#=======================WEB APP================================
然后,将WebProperties.properties文件上传到名为demo的tamcat下的conf目录下
最后,项目里面导入配置文件时,使用${WEB APP_PROPERTY_FILE}即可获取到配置文件路径。
本地开发时,在导入配置文件时,使用filePath='file:C/Test/WebProperties.properties'方式导入即可。当然,也可以配置环境变量。
以上就是我们项目里面的解决方案。可能因环境不同有所差异,自己参考吧
回答3:tomcat中environment可以指定spring.config.location = application property files
回答4:打成war包的话确实不太好弄,不过在上线之前不是已经改为线上的配置了吗 或者 定义多个配置文件 使用命令启动时指定使用哪一个
相关文章:
1. angular.js - angular内容过长展开收起效果2. javascript - canvas 裁剪空白区域3. docker绑定了nginx端口 外部访问不到4. docker网络端口映射,没有方便点的操作方法么?5. docker不显示端口映射呢?6. nignx - docker内nginx 80端口被占用7. javascript - nodejs调用qiniu的第三方资源抓取,返回401 bad token,为什么8. docker - 各位电脑上有多少个容器啊?容器一多,自己都搞混了,咋办呢?9. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?10. debian - docker依赖的aufs-tools源码哪里可以找到啊?
