Maven 2 maven程序集插件导致测试运行两次
我有一个maven项目,在那里我正在使用汇编插件。 我通常通过运行以下命令来创建我的工件: mvn清理验证程序集:程序集 (我有集成测试,我想单独运行单元测试) 当它运行时,程序集插件正在运行单元测试本身。 这会导致它们运行两次 有没有办法告诉程序集插件不要运行测试? 我很想分两个步骤来执行此操作: 1.清洁验证 2.如果上一个命令成功,请运行mvn assembly:assembly-DskipTests=true 但是,这有点笨拙,宁愿使用单一命令 谢谢, 史蒂文 当它运行时,程序集插件正在运行单元测试本身。这会导致它们运行两次 目标在执行自身之前调用生命周期阶段包的执行,因此在命令行上运行它将调用Maven 2 maven程序集插件导致测试运行两次,maven-2,maven-assembly-plugin,Maven 2,Maven Assembly Plugin,我有一个maven项目,在那里我正在使用汇编插件。 我通常通过运行以下命令来创建我的工件: mvn清理验证程序集:程序集 (我有集成测试,我想单独运行单元测试) 当它运行时,程序集插件正在运行单元测试本身。 这会导致它们运行两次 有没有办法告诉程序集插件不要运行测试? 我很想分两个步骤来执行此操作: 1.清洁验证 2.如果上一个命令成功,请运行mvn assembly:assembly-DskipTests=true 但是,这有点笨拙,宁愿使用单一命令 谢谢, 史蒂文 当它运行时,程序集插件正在
包之前的任何包。这包括测试
阶段
有没有办法告诉程序集插件不要运行测试
否。我的建议是将程序集创建为构建生命周期的一部分,而不是在命令行上调用插件,即在特定阶段绑定它。例如:
<project>
...
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-5</version>
<executions>
<execution>
<id>create-my-assembly</id>
<phase>package</phase><!-- change this if not appropriate -->
<goals>
<goal>single</goal>
</goals>
<configuration>
...
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
...
maven汇编插件
2.2-β-5
创建我的程序集
包裹
单一的
...
如果您不希望在集成测试失败时创建程序集,请在稍后阶段绑定它(例如,集成后测试
或验证
)
如果您不希望系统地创建程序集,请将上述配置放在配置文件中。Hi,我已经让程序集在包上自动运行(阶段设置为包)。然而,它只是运行单元测试本身,即使只是运行:mvn clean package,所以测试阶段的常规转换运行第一组单元测试,然后程序集绑定到包阶段再次运行单元测试。@如果绑定正确的目标,即single
,则不会。我怀疑您绑定了assembly
,它应该只在命令行上使用。我正在使用附加的目标。这是为了在发布期间将其上载到我的存储库。在我使用附加的目标之前,我尝试构建助手插件来附加工件,但是它抱怨工件具有相同的ID(或者类似的奇怪的东西)。我以后再进一个单球。谢谢