cnblogs/dcrenl/SpringBoot项目war、jar自定义配置application文件的位置.html

7 lines
1.7 KiB
HTML
Raw Normal View History

2024-09-24 12:43:01 +08:00
<p>此篇文章的真正目的应该是关于war包运行在独立tomcat下时应如何在war包外部配置application.properties以达到每次更新war包而不用更新配置文件的目的。<br />百度搜素SpringBoot配置文件基本上会得到如下信息<br />SpringBoot配置文件可以放置在多种路径下不同路径下的配置优先级有所不同。<br />可放置目录(优先级从高到低)<br />1.file:./config/ (当前项目路径config目录下);<br />2.file:./ (当前项目路径下);<br />3.classpath:/config/ (类路径config目录下);<br />4.classpath:/ (类路径config下).<br />优先级由高到底,高优先级的配置会覆盖低优先级的配置;<br />SpringBoot会从这四个位置全部加载配置文件并互补配置</p>
<p>想要满足不更新配置文件的做法一般会采用1 和 2但是这些对于运行在独立tomcat下的war包并不比作用。<br />我这里采用的是SpringBoot的Profile配置。<br />在application.properties中增加如下配置</p>
<p>spring.profiles.active=test1</p>
<p>再在tomcat根目录下新建一个名为config的文件夹新建一个名为application-test1.properties的配置文件。<br />完成该步骤后Profile配置已经完成了。<br />然后还需要将刚刚新建的config文件夹添加到tomcat的classpath中。<br />打开tomcat中catalina.properties文件在common.loader处添加"${catalina.home}/config"此处的config即之前新建的文件夹名称。<br />如此大功告成。程序启动之后每次配置文件都会从config/application-test1.properties加载。</p>
<p>yml格式的配置文件设置相同</p>
<p>&nbsp;</p>
<p>转自https://blog.csdn.net/dashuaigege642/article/details/88245250</p>