springboot war放入tomcat启动怎么指定使用外部application.properties
ringa_lee
Resource支持 file:d:/myspring/banner.txt 这种方式,那么 @PropertySource("file:///user/myspring/application.properties") 应该也是可以的,可以试下,我没尝试过。
@PropertySource("file:///user/myspring/application.properties")
可以在tomcat的bin目录下的catalina.sh文件里面,添加环境变量例如:tomcat目录名为demo。
首先,修改catalina.sh文件在230行左右
f [ -z "$JSSE_OPTS" ] ; then JSSE_OPTS="-Djdk.tls.ephemeralDHKeySize=2048" fi JAVA_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"方式导入即可。当然,也可以配置环境变量。
以上就是我们项目里面的解决方案。可能因环境不同有所差异,自己参考吧
tomcat中environment可以指定spring.config.location = application property files
打成war包的话确实不太好弄,不过在上线之前不是已经改为线上的配置了吗 或者 定义多个配置文件 使用命令启动时指定使用哪一个
Resource支持 file:d:/myspring/banner.txt 这种方式,
那么
@PropertySource("file:///user/myspring/application.properties")
应该也是可以的,可以试下,我没尝试过。可以在tomcat的bin目录下的catalina.sh文件里面,添加环境变量
例如:tomcat目录名为demo。
首先,修改catalina.sh文件
在230行左右
然后,将WebProperties.properties文件上传到名为demo的tamcat下的conf目录下
最后,项目里面导入配置文件时,使用${WEB APP_PROPERTY_FILE}即可获取到配置文件路径。
本地开发时,在导入配置文件时,使用filePath="file:C/Test/WebProperties.properties"方式导入即可。当然,也可以配置环境变量。
以上就是我们项目里面的解决方案。可能因环境不同有所差异,自己参考吧
tomcat中environment可以指定spring.config.location = application property files
打成war包的话确实不太好弄,不过在上线之前不是已经改为线上的配置了吗 或者 定义多个配置文件 使用命令启动时指定使用哪一个