我刚刚使用原型创建了一个自定义插件,如下所述:
https://maven.apache.org/guides/plugin/guide-java-plugin-development.html
我可以编译插件,但我无法实现目标。我做错了什么?
/**
* Goal which touches a timestamp file.
*
* @deprecated Don't use!
*/
@Mojo(name = "touch", defaultPhase = LifecyclePhase.PROCESS_SOURCES)
public class MyMojo
extends AbstractMojo {
public void execute()
throws MojoExecutionException {
getLog().warn("Just a test");
}
}
以下是Mojo的使用示例(在一个不同的几乎空的项目中):
<build>
<plugins>
<plugin>
<artifactId>hello-maven-plugin</artifactId>
<groupId>sample.plugin</groupId>
<version>1.0.0-SNAPSHOT</version>
</plugin>
</plugins>
</build>
在命令行上我运行: mvn sample.plugin:hello-maven-plugin:touch
我收到了这个错误:
插件sample.plugin:hello-maven-plugin:1.0.0-SNAPSHOT或其中一个依赖项无法解析:找不到工件sample.plugin:hello-maven-plugin:jar:1.0.0-SNAPSHOT - &GT; [帮助1]
Maven版本是:Apache Maven 3.3.3
任何想法我做错了什么?
答案 0 :(得分:1)
错误说maven无法找到您的插件工件
构建插件后,您的插件jar将被放置在本地存储库中。检查你当地的仓库是否有这个罐子
sample\plugin\hello-maven-plugin\1.0.0-SNAPSHOT\hello-maven-plugin-1.0.0-SNAPSHOT.jar
示例版本为1.0-SNAPSHOT
。