maven - 如何为多模块项目中的特定模块激活 Maven 配置文件

标签 maven build project multi-module

我们有一个由父 POM 和 5 个或更多模块组成的多模块 Maven 项目。

如果我们激活我们的自定义“自动部署”配置文件,每个模块都可以作为构建的一部分部署到正在运行的服务器,该配置文件在每个模块中明确定义,因为每个模块的部署方式/内容略有不同。

但是,当从父 POM 构建时,如果我激活“自动部署”配置文件,Maven 将最终部署所有模块,这几乎不是我们需要做的(基于我们的开发流程等)。但是我们确实希望从根目录构建,因为多个模块之间可能存在更改,并且某些模块之间存在依赖关系。

在从父 POM 构建时,有没有办法为其中一个模块而不是所有模块激活我们的自定义“自动部署”配置文件?

谢谢

最佳答案

如果您的每个模块都有自己的“自动部署”配置文件,并且配置文件激活将由传递给 mvn 的变量触发命令,您将能够在父模块上运行单个 mvn 命令,并通过声明激活变量来决定应该部署哪些模块

<profiles>
    <profile>
        <id>profileId</id>
        <activation>
            <property>
                <name>profileIdEnabled</name>
                <value>true</value>
            </property>
        </activation>
        <properties></properties>
    </profile>
</profiles>

进而
mvn -DprofileIdEnabled=true

关于maven - 如何为多模块项目中的特定模块激活 Maven 配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11620566/

相关文章:

visual-studio-2010 - Visual Studio, MSBuild : First build after a clean fails, 以下构建成功

c# - 项目之间的 Type.GetType() 可见性问题 (Visual C#)

c# - 如何将.exe从C++项目复制到C#项目的输出目录?

bash - mvn clean 在终端中运行良好,但在 cron 和 bash 文件中运行不正常

intellij-idea - 如何在 IntelliJ IDEA 中清理或清理构建我的 Maven 项目?

c++ - 构建 Boost 1.49.0 时出现 fatal error C1027

mongodb - Mongodb聚合中基于其他字段值的多个条件的动态新字段值

java - 创建可执行的java maven项目

java - 如何在maven pom.xml文件中找到需要依赖的java类

android - Gradle不下载链接到 Artifact 的依赖项