2015-11-06 35 views
0

我目前在Maven构建的大项目中工作,它有许多集成测试模块,它们被标记为主要(不测试)源。 我想创建一个配置文件,它将跳过这些模块的编译。 我期望gmaven插件允许“跳过”配置参数,但事实并非如此。 有什么办法可以跳过模块处理,而无需将gmaven插件指向不存在的目录,也不需要将除集成测试以外的所有模块复制粘贴到单独的配置文件中?在gmavenplus插件中跳过编译

+0

不理解你的问题!你使用org.codehaus.gmaven:groovy-maven-plugin? –

回答

0

您可以将集成测试模块放入列出模块的父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,因为在发布版本时可能会意外排除它们。我认为在这种情况下应该可以,因为该配置文件必须明确停用。

+0

对不起,在这个问题上 –