跳过gmavenplus插件中的编译

时间:2015-11-06 06:35:41

标签: maven gmaven-plugin

我目前在Maven构建的大型项目中工作,该项目有许多集成测试模块,标记为主要(非测试)源。 我正在尝试创建一个将跳过这些模块的编译的配置文件。 我希望gmaven插件允许“跳过”配置参数,但事实并非如此。 有没有办法跳过模块处理而不将gmaven插件指向不存在的目录,并且除了集成测试之外没有所有模块的复制粘贴到单独的配置文件?

1 个答案:

答案 0 :(得分:1)

您可以将集成测试模块放在列出模块的父pom的单独配置文件中。除非通过在运行Maven构建(-DskipIntegrationTestModules)时设置属性来禁用该配置文件,否则该配置文件应处于活动状态。 (Don't use activeByDefault。)

  <modules>
    <module>my-project</module>
  </modules>

  <profiles>
    <profile>
        <id>build-integration-tests</id>
        <activation>
            <property>
                <name>!skipIntegrationTestModules</name>
            </property>
        </activation>       
        <modules>
            <module>my-project-integration-test</module>
        </modules>
    </profile>
  </profiles>

您可以在Maven Introduction to Build Profiles中找到更多详细信息。

您还应该知道it can be dangerous to have modules in build profiles因为在执行发布版本时可能会意外遗漏它们。我认为在这种情况下应该没问题,因为必须明确停用配置文件。