添加自定义archetype几个注意和疑问
经常创建一些maven项目,每次都是需要重新添加依赖,重新建些包之类,很麻烦。maven提供archetype的插件,可以让用户自定义原型,方便操作。
网上查看了文章,基本上都是一个模子,自己动手试了试,却没有成功,主要是几个细节并没有被提到。
创建普通项目,添加插件
<plugins>
<plugin>
<groupId>org.apache.maven.plugins<groupId>
<artifactId>maven-archetype-plugin<artifactId>
<version>2.0-alpha-4<version>
</plugin>
...
</plugins>
之后, 就可以开个命令行窗口,进入当前project所在目录,敲下 mvn archetype:create-from-project
之后, 在目录target/generated-sources/archetype/ 接着敲键盘:mvn install
将该创建好的archetype安装到本地的repository之后, 我们就可以使用它了.
上面几个步骤不难,但是有几个细节需要注意:
1.所建的项目文件,version不能是snapshot的。须是release。
2.如果新建项目时候,Default Local 被选后,下面是没有选项,说明一定出问题了。
3.该方法(指mvn install)考虑的是本地使用,并不是远程,所以生成的archetype-catalog.xml 文件与maven的默认仓库路径同级。在 ~/.m2/ 下.
另外:mvn archetype:crawl 会在指定的maven仓库根目录下生成archetype-catalog.xml 是不是可用还没有验证。
基本上面几个点注意后,应该会顺利在界面显示自己定义的archetype。
但是我遇到一个新问题,自己定义的archetype,在使用时,新建的项目中,不能显示成maven默认的项目结构,里面源文件夹显示不出来,
通过buildpath进去看到的是爆红的两个文件夹。有待解决。