2010-09-02 52 views
19

我有一个包含2个配置文件的项目,因为UAT和PROD使用同一个jar的不同版本。Force Maven clean

我注意到,如果我没有明确地调用mvn clean ...,那么部署的EAR将具有两个UAT和PROD罐子。

POM中是否有方法指定Maven应该在任何建筑物之前始终清理?

回答

44

使用maven-clean-plugininitialize阶段。访问Maven clean plugin usage page,他们提供了一个如何在构建过程中自动运行插件的示例。

+0

优秀答案(+1) – 2010-09-02 07:10:41

0

请详细阅读the maven lifecycle 特别是包的生命周期。

您使用的maven clean插件可能会允许您在特定的pahse中定义一个干净的目标。 你也可以执行例如MVN清洁这里

http://maven.apache.org/plugins/maven-clean-plugin/usage.html

<project> 
    [...] 
    <build> 
    <plugins> 
     <plugin> 
     <artifactId>maven-clean-plugin</artifactId> 
     <version>2.4.1</version> 
     <executions> 
      <execution> 
      <id>auto-clean</id> 
      <phase>initialize</phase> 
      <goals> 
       <goal>clean</goal> 
      </goals> 
      </execution> 
     </executions> 
     </plugin> 
    </plugins> 
    </build> 
    [...] 
</project> 
+2

我目前在命令行上手动指定干净的目标,因为我们可以从maven部署到PROD,忘记'干净'可能导致不确定的行为。 – n002213f 2010-09-02 07:08:52

4

当然给安装-P轮廓

相关问题