【发布时间】:2012-12-31 11:46:37
【问题描述】:
我已经实现了一个 Maven 2 插件。
我的 Mojo 有这个定义:
/**
* Goal which combines files.
*
* @goal combine
* @phase compile
*/
public class CombineMojo extends AbstractMojo {
我必须将它添加到我的项目(使用插件)pom:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>base-project</groupId>
<artifactId>base-project</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>combine-maven-plugin</artifactId>
<version>1.0-SNAPSHOT</version>
<configuration>
<input>src/input.html</input>
<output>html/output.html</output>
</configuration>
<executions>
<execution>
<id>combine-maven-plugin</id>
<goals>
<goal>combine</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
但是我应该怎么做才能自动执行它而不是在 pom.xml 中定义。我尝试添加
@execute ...
进入我的 Mojo 定义,但它不起作用。顺便说一句,我应该定义一个id,它需要什么?
【问题讨论】:
-
你能展示你测试项目的完整pom文件吗?此外,插件不能自动执行,它必须绑定到生命周期阶段。
-
您在执行测试项目期间是否收到任何错误/消息?
-
@khmarbaise 一个插件可以自动执行,但只有为特定包装类型定义的特定插件:stackoverflow.com/a/57061848/1548776
标签: java maven-2 maven-plugin