0

当我使用命令行执行此操作时,

mvnw clean install spring-boot:run -Dspring.profiles.active=prod -Dmaven.test.skip=true -Djava.util.Arrays.useLegacyMergeSort=true

项目正常运行

但是当我使用 -Pprod 命令尝试相同的操作时,它会给出一个错误(正常运行但无法显示主页),

mvnw clean install spring-boot:run -Pprod -Dmaven.test.skip=true -Djava.util.Arrays.useLegacyMergeSort=true

目前我有三个配置文件 dev、test 和 prod。

我想知道,这两者有什么区别?

请给我一些关于 -Pprod 命令的想法。

4

1 回答 1

1

-Pprod是 Maven 调用的属性,并激活名称为 的 Maven 配置文件prodspring.profiles.active=prod激活 Spring 配置文件。它们不一样,因此这取决于您在何处配置了 3 个配置文件(我猜您已将它们配置为 Spring 配置文件,因此您必须使用 Spring 属性)。可以通过某种方式配置 Maven 配置文件,以便在该运行中激活 Spring 配置文件(基本上在 Maven 配置文件中,您可以将 Spring 配置文件属性设置为该值)。您可以在此处找到更多相关信息。简短的例子:

<profiles>
  <profile>
    <id>prod</id>
    <properties>
      <spring.profiles.active>prod</spring.profiles.active>
    </properties>
  </profile>
</profiles>
于 2018-09-08T06:05:34.123 回答