spring boot:分别在jar内部和外部使用配置文件(spring boot v2.5.4)
一,第一种情况:配置文件放在jar内部
1,如图:

如图所示,配置文件放在resources目录下即可
2,开发时指定要使用哪个配置文件?
默认启动:
在application.yml中(此文件中保存通用的配置)
#profile
spring:
profiles:
active: dev
说明:此处指定使用application-dev.yml
3,生产环境中指定使用哪个配置文件?
nohup ${JDK_PATH} -jar ${WORKSPACE}/${JAR_NAME} --spring.profiles.active=prd >> /store/back/logs/back.log 2>&1 &
说明:用 --spring.profiles.active=prd 指定使用 application-prd.yml配置文件
说明:刘宏缔的架构森林是一个专注架构的博客,
网站:https://blog.imgtouch.com
本文: https://blog.imgtouch.com/index.php/2023/06/01/spring-boot-fen-bie-zai-jar-nei-bu-he-wai-bu-shi-yong-pei/
对应的源码可以访问这里获取: https://github.com/liuhongdi/
或: https://gitee.com/liuhongdi
说明:作者:刘宏缔 邮箱: 371125307@qq.com
二,第二种情况:配置文件在jar包内部和外部都有
1,开发时的配置文件:如图:

可以看到:内部配置文件的位置没变
开发环境中,我们把外部配置文件application.yml放在了项目的根目录下
2,生产环境中如何指定使用外部配置文件?
nohup ${JDK_PATH} -jar ${WORKSPACE}/${JAR_NAME} --spring.config.additional-location=/store/back/jar/application.yml --spring.profiles.active=prd >> /store/b
ack/logs/back.log 2>&1 &
说明:--spring.config.additional-location 指定了附加的外部配置文件
三,第三种情况:配置文件放在jar外部
1,开发环境:如图

可以看到配置文件application.yml放在了项目的根目录下
(application.properties是空文件)
2,生产环境中指定外部配置文件:
nohup ${JDK_PATH} -jar ${WORKSPACE}/${JAR_NAME} --spring.config.location=/store/back/conf/application.yml >> /store/back/logs/back.log 2>&1 &
说明:--spring.config.location用来指定外部配置文件的路径
四,查看spring boot的版本:
. ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.5.4)
浙公网安备 33010602011771号