2017-07-28 43 views
0

我想在Maven项目中添加插件。我希望将它添加到构建项目以进行测试时才能构建。如何将插件仅包含在Maven中进行测试构建?

我发现<scope>可用于依赖性如下图所示

<dependency> 
    <groupId>ch.qos.logback</groupId> 
    <artifactId>logback</artifactId> 
    <version>0.5</version> 
    <scope>test</scope> 
</dependency> 

正如你可以在这里看到<scope>test</scope>使用。

我想要类似的插件。例如,这是我的插件代码snipplet

<build> 
     <plugins> 
      <plugin> 
       <groupId>org.jibx</groupId> 
       <artifactId>jibx-maven-plugin</artifactId> 
       <version>1.2.4</version> 
       <executions> 
        <execution> 
         <goals> 
          <goal>bind</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 
+0

基于文档,此插件默认绑定到未在测试中的'process-classes' ...问题是您想要达到的目标吗?为什么不通过执行到适当的阶段呢? – khmarbaise

回答

1

您可以创建您在您的测试启动情景构建:

<profiles> 
    <profile> 
     <id>testing</id> 
     <build> 
      <plugins> 
       <plugin> 
        <groupId>org.jibx</groupId> 
        <artifactId>jibx-maven-plugin</artifactId> 
        <version>1.2.4</version> 
        <executions> 
         <execution> 
          <goals> 
           <goal>bind</goal> 
          </goals> 
         </execution> 
        </executions> 
       </plugin> 
      </plugins> 
     </build> 
    </profile> 
</profile> 

然后调用MVN与参数-P testing激活您的个人资料:

mvn test -P testing 

除了手动激活配置文件外,配置文件也可以根据条件自动激活,例如环境的存在变量或特定文件。你可以在Maven introduction on profiles找到更多的信息。

+0

非常感谢你:) – ManishMenaria

0

您可以通过执行绑定插件相:

<build> 
    <plugins> 
    <plugin> 
     <groupId>org.jibx</groupId> 
     <artifactId>jibx-maven-plugin</artifactId> 
     <version>1.2.4</version> 
     <executions> 
     <execution> 
      <phase>test</phase> 
      <goals> 
      <goal>bind</goal> 
      </goals> 
     </execution> 
     </executions> 
    </plugin> 
    </plugins> 
</build> 

我看到usually this plugin runsprocess-classes阶段已经通过插件authors..So做的目的我不知道该请求的问题仅在测试阶段使用它...

相关问题