我正在尝试从maven学习如何将gradle与springboot一起使用,因此我想知道如何在命令行中运行我的项目以选择其他配置文件。 这里的情况是我有我的属性,例如。
application-qa.properties 和 application.properties
但是如果使用./gradlew -PspringProfile=qa bootRun
它仅加载 application.properties 中的默认属性,而不加载qa属性。
我如何像以前的Maven一样使用gradle来完成此任务?
这是我尝试过的。 我在IntelliJ中创建了gradle run配置,但这还行不通,
是否有一个命令行选项?
答案 0 :(得分:2)
首先,正如另一位用户在对问题的评论中所说,您使用的参数名称不正确。
但是,此外,您不能通过-P
设置具有项目属性的活动配置文件(至少不是开箱即用)。您还有其他选择。
使用--spring.profiles.active=qa
作为这样的参数:
gradlew bootRun --args='--spring.profiles.active=qa'
我认为您不能将这种类型的参数放入IntelliJ运行配置的“参数”列表中,但是可以根据需要直接将其放入“任务”值中。但这有点奇怪。
通过Gradle运行时,默认使用Gradle构建文件中的特定环境:
bootRun {
environment('spring.profiles.active', 'qa')
}
如果在使用Gradle中的bootRun任务时始终在相同的环境下运行,这很有意义。
在本地计算机或IntelliJ运行配置中设置环境变量spring.profiles.active=qa
。