Maven-Archetype-Mojo和Maven-Archetype-Plugin之间有什么区别



从运行命令mvn archetype:generate > a.txt的输出中的摘要:

332: remote -> org.apache.maven.archetypes:maven-archetype-mojo (An archetype which contains a sample a sample Maven plugin.)
333: remote -> org.apache.maven.archetypes:maven-archetype-plugin (An archetype which contains a sample Maven plugin.)

运行以下命令生成的几乎相同的POM文件和Java源类:

mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app-plugin -DarchetypeArtifactId=maven-archetype-plugin -DinteractiveMode=false
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app-mojo -DarchetypeArtifactId=maven-archetype-mojo -DinteractiveMode=false

那么maven-archetype-mojomaven-archetype-plugin有什么区别?这两个都会生成示例插件项目吗?为什么我们两个?

没有区别。Maven Mojo是一个最小的Maven插件。

什么是Mojo?Mojo是一个矮胖的旧爪哇物体。每个Mojo都是Maven中的可执行目标,并且插件是一个或多个相关的Mojos的分布。

我认为我们不需要两者,只是在Maven World中的一团糟:)

最新更新