如何从命令行激活 Maven 配置文件(构建子系统)

How to activate maven profile from command line (to build subsystem)

我有一个 Maven 项目https://github.com/paulvi/MavenMultiModule1

根 pom.xml 为

<modules>
    <module>MavenModule1</module>
    <module>MavenModule2</module>
</modules>
<properties>

</properties>
<profiles>
    <profile>
        <id>p1</id>
        <modules>
            <module>MavenModule1</module>
        </modules>
    </profile>
    <profile>
        <id>p2</id>
        <modules>
            <module>MavenModule2</module>
        </modules>
    </profile>
</profiles>

我希望能够单独构建子系统,
例如mvn package -P p1mvn package -P p2

两个配置文件都可见,但无法使用 -P 开关激活

mvn help:all-profiles -P p1

other project

一起工作

这里缺少什么来激活配置文件或者构建子系统的更好方法是什么?

我已阅读How to activate a Maven profile in a dependent module?

您不需要配置文件来构建特定模块,而是使用 -pl 标志。

http://books.sonatype.com/mvnref-book/reference/_using_advanced_reactor_options.html

您应该删除那个 space,它应该可以正常工作。

使用

mvn package -Pp1

你的问题是通过声明

<modules>
    <module>MavenModule1</module>
    <module>MavenModule2</module>
</modules>

那些总是建立起来的。 只需删除前 4 行,它就会按预期工作。

现在您可以通过键入以下内容来构建 MavenModule1:

-P p1

两者都输入:

-P p1,p2

等等。