【发布时间】:2020-08-03 12:40:56
【问题描述】:
我有一个框架,其中有多个类,其中一个类是 mojo 类,它从不同的类获取一些数据,然后将这些数据传递给其他类以执行。 第一次使用命令 mvn clean install 时会出现错误 - 找不到工件 com.io:MyDataProject:0.0.1-SNAPSHOT。然后我必须注释掉构建标记中的第二个插件部分,如下所示,然后再次使用命令 mvn clean install 然后安装我的插件,一旦安装,我将再次取消注释注释代码,以便我可以使用我安装的插件来执行 mojo,然后一切运行正常。
问题是如果我要与其他团队成员共享我的项目,他们必须执行我不想要的相同步骤。我需要使用 mvn clean install 来安装我的插件并同时执行我的 mojo 之类的东西。
@Mojo(name = "dependency-counter", defaultPhase = LifecyclePhase.COMPILE)
public class DependencyCounterMojo extends AbstractMojo {
public void execute() throws MojoExecutionException, MojoFailureException {
System.out.println("$$$$$$$$$$$$$$ ....Mojo execution begins.... $$$$$$$$$$$$$$");
GenerateFeature ob=new GenerateFeature();
ob.getData();
}
}
Pom.xml:
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-plugin-plugin</artifactId>
<version>3.4</version>
</plugin>
<plugin>
<groupId>com.io</groupId>
<artifactId>MyDataProject</artifactId>
<version>0.0.1-SNAPSHOT</version>
<executions>
<execution>
<goals>
<goal>dependency-counter</goal>
</goals>
</execution>
</executions>
<configuration>
<scope>test</scope>
</configuration>
</plugin>
</plugins>
</build>
【问题讨论】:
-
我理解正确吗:您正在尝试将插件添加到此插件的 POM 中?
-
我有一个 maven 项目,在 src/main/java 下我有所有与框架相关的类 + mojo 类,只有一个 POM 文件,它只属于这个 maven 项目。
-
您可以创建模块化项目,并首先将插件构建为模块,然后将您的项目构建为第二个模块
标签: java maven maven-3 maven-plugin maven-assembly-plugin