在 Spring Boot Multimodule Mave 项目中在命令行上指定 Spring 配置文件

问题描述 投票:0回答:2

我有this多模块Spring Boot(v2.7.0)项目。 它相当简单——一个控制器有一个端点。

├───app
│   ├── pom.xml
│   └───src
│       └───main
│           └───java
│               └───com
│                   └───rb
│                       └─── App.java
├───controller
│   ├── pom.xml
│   └───src
│       └───main
│           └───java
│               └───com
│                   └───rb
│                       └─── MainController.java
└ pom.xml

我使用的是 Maven 3.8.4。

我想使用这个Spring Boot的不错的快捷方式在命令行上指定配置文件

mvn clean install; 
mvn spring-boot:run '-Dspring-boot.run.profiles=local' --projects app

(我从 PowerShell 运行它,因此参数周围有单引号)

但是,这不起作用。应用程序启动,运行良好,但具有

default
配置文件。

我的问题是 - 如何使这个漂亮的语法起作用,或者为什么它不起作用?

Spring作品中提到的

这个更丑更长的语法

mvn clean install;
mvn spring-boot:run '-Dspring-boot.run.jvmArguments="-Dspring.profiles.active=local"' --projects app

我还尝试在命令提示符下运行它,省略那些单引号 - 具有相同的结果。

如果有任何关于可能出现问题的见解,我将不胜感激 - 我不是 Java 方面的专家 属性和命令行参数。

java spring-boot command-line-arguments multi-module maven-profiles
2个回答
2
投票

当你使用spring-boot maven插件运行时,你必须像这样传递它

mvn spring-boot:run -Dspring-boot.run.profiles=local


0
投票

遇到同样的问题,想知道是否有解决办法?

© www.soinside.com 2019 - 2024. All rights reserved.