maven 自定义archetype

 Maven提供了archetype帮助我们快速构建项目骨架,很便捷。但是,中央仓库中的archetype版本过于陈旧,构建好项目后,需要修改很多信息,甚是麻烦,那么如何自定义个archetype就显得很有必要。

   自定一个archetype须遵循以下步骤:

   1、手工搭建好一个完善的工程;

   2、cd 到工程目录,注意:通过shfit+右键打开的命令窗口,运行mvn,命令好像找不到,其他程序,比如Java都是可以的,只能从cmd,切换

   如:C:\Users\asus>cd D:\workspaces\Eclipse kepler\bigData-Study
   C:\Users\asus>d:

   3、进入工程目录,保留src和pom.xml,删除其他文件(不删除也可以的);

   4、执行指令mvn archetype:create-from-project 此时会自动生成target目录;

   5、执行指令cd target/generated-sources/archetype 切换目录;

   6、执行指令mvn install 那么一个archetype就安装到本地库,在Eclipse中就可以被选择用于构建项目;

================================================

  在此过程中可能会出现一个问题,摘录如下:

  (1)在windows平台下,执行第三步,抛出如下错误

复制代码
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.294 s
[INFO] Finished at: 2016-09-09T16:03:51+08:00
[INFO] Final Memory: 17M/164M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2
.4:create-from-project (default-cli) on project Test03: Error configuring comman
d-line. Reason: Maven executable not found at: *\apache-maven-3.3.9\bin\m
vn.bat -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit
ch.
复制代码

   针对此错误,进入apache-maven-3.3.9\bin目录,拷贝mvn.cmd,重命名为mvn.bat即可。

(2)选择archetype构建web项目时,\WEB-INF\web.xml首行的声明version="1.0" 也随着构建时填写的版本号同时改变。

   针对这个问题,在执行第五步之前,进入当前目录下的 src 目录,找到web.xml 把第一个${version}变量,改为1.0即可,其他类似XML配置文件同理修改。

3)使用Eclipse构建,发布到中间件中时,访问路径还是archetype的路径,导致以项目名访问失败

   该问题的解决方案为,在构建archetype的时候,该archetype中的pom.xml文件中的finalName用变量制定,即<finalName>${project.artifactId}</finalName>

7,生成的archetype文件会在本地的maven 仓库里,默认的是${user.home}/.m2/repository,这个eclipse如果用的是自定义的maven ,会在conf/setting文件里有配置


8,配置本地archetype

preference->mavn-Archetypes->add local Catalog,选择maven本地仓库刚刚构建的那个。我的是在C:\Users\asus\.m2,自己的外部mavn的配置是一致的。

9.创建一个maven项目,当选择Catalog时,选择我们刚刚起的描述名,如果为snapshot项目,还要选上下方的include snapshot archetype.如图:

\

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值