可以通过运行时的命令行参数指定配置文件的路径,如果指定的是文件夹,则默认该文件夹下的application.properties中的配置起作用,如果指定了多个文件夹,则后边的配置文件的配置会覆盖前边的配置文件的路径。
例如,在resources目录下建立两个文件夹cfg和ext,在其中分别建立application.properties,内容分别为:
server.port=9987
myName=Newton
myName=Paul
打成jar包后通过命令行运行程序(按实际路径):
java -jar D:\springbootconfigtest\target\hi-1.0.0.jar --spring.config.location=classpath:/cfg/,classpath:/ext/
程序启动的端口为9987,程序中获取到的myName的值为Paul
默认的application.properties中配置的属性将不起作用