仅按需运行exec-maven-plugin

时间:2017-11-30 00:55:59

标签: maven

有没有办法配置maven(一般)或exec-maven-plugin,以便它只按需执行,但链接到(并包括)test?

我有一个测试主(java),我用它进行临时测试。我可以在Eclipse中运行它。但我也想从命令行运行它。

但是,我希望它与单元测试(测试阶段)一起运行。

但它必须在测试阶段之后暂存,因为它使用测试子树中的代码并使用测试类路径。

这就是我所拥有的。它工作正常,除了它作为测试阶段的一部分运行。

    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>1.6.0</version>
        <executions>
            <execution>
                <id>adhoc-domain-test</id>
                <phase>test</phase>
                <goals>
                    <goal>java</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
            <mainClass>com.abc.test.AdHocTest</mainClass>
            <classpathScope>test</classpathScope>
        </configuration>
    </plugin>

如果我将阶段更改为(例如)verify,它仍会在mvn install上执行。

1 个答案:

答案 0 :(得分:2)

要仅按需运行插件,您可以将插件包装在默认情况下未处于活动状态的配置文件中,如下所示:

<profiles>
    <profile>
        <id>my-profile</id>
        <activation>
            <activeByDefault>false</activeByDefault>
        </activation>
        <build>
            <plugins>
                <plugin>
                ...
                </plugin>
            </plugins>
        </build>
    </profile>
</profiles>

profiles元素直接位于project元素下。您现在可以像这样运行插件:

mvn -P my-profile ...

相关问题