在我的项目中,我想使用特定于环境的属性文件。例如,如果我将它运行到开发中,它应该使用 application.dev.properties,对于生产它应该使用 application.prod.properties 等等。
我的资源文件夹中有以下两个文件。
- application.properties(用于生产)
- application.dev.properties(用于开发)
我在每个文件中都有一个如下属性。
产品
server.database.host=192.168.1.1
对于开发
server.database.host=192.168.12.125
我有一个像下面这样的课
public class DataSource {
@Value(${server.database.host})
String host;
上面的代码总是采用 prod 设置(application.properties)文件,即使我为 dev 提供了正确的参数,比如--spring.profiles.active=dev
下面是我用来加载开发属性文件的命令。
java -jar myjar.jar --spring.profiles.active=dev
它还打印出活动配置文件是 dev,但它始终连接到 prod db。