我尝试过:
mvn -Dspring.profiles.active=dev spring-boot:run
但这并不影响我的默认配置。我用谷歌搜索了一下,发现:
mvn -DargLine="-Dspring.profiles.active=dev"spring-boot:run
但如果也失败了。
当我运行时:
mvn 包
然后:
java -Dspring.profiles.active=test -jar target/app-1.0.0.jar
它按预期工作(配置文件已更改),但无法从资源目录中找到文件(FileNotFound 异常),该文件是这样加载的:
new File(getClass().getClassLoader().getResource("data.yml").getFile())
使用maven运行应用程序时,此文件没有问题。
有什么建议吗?
最佳答案
对于当前版本(>= 2.0.0.RELEASE),参数为-Dspring-boot.run.jvmArguments
mvn spring-boot:run -Dspring-boot.run.jvmArguments="-Dspring.profiles.active=dev"
来源:Running your Application with Maven
要激活特定的配置文件,有一个可用的快捷方式:
mvn spring-boot:run -Dspring-boot.run.profiles=dev
关于 Spring 启动: passing system properties to maven,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28049044/