Maven自定义Archetype
Maven提供了archetype帮助我们快速构建项目骨架,很便捷。但是,中央仓库中的archetype版本过于陈旧,构建好项目后,需要修改很多信息,甚是麻烦,那么如何自定义个archetype就显得很有必要。
自定一个archetype须遵循以下步骤:
1、手工搭建好一个完善的工程;
2、进入工程目录,保留src和pom.xml,删除其他文件;
3、执行指令mvn archetype:create-from-project 此时会自动生成target目录;
4、执行指令cd target/generated-sourced/archetype 切换目录;
5、执行指令mvn install 那么一个archetype就安装到本地库,在Eclipse中就可以被选择用于构建项目;
================================================
在此过程中可能会出现一个问题,摘录如下:
1、在windows平台下,执行第三步,抛出如下错误
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.294 s
[INFO] Finished at: --09T16::+:
[INFO] Final Memory: 17M/164M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:
.:create-from-project (default-cli) on project Test03: Error configuring comman
d-line. Reason: Maven executable not found at: *\apache-maven-3.3.\bin\m
vn.bat -> [Help ]
[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>
Maven自定义Archetype的更多相关文章
- Maven 自定义 archetype
最近在公司经常要写一些 storm-job 工程的骨架(archetype)非常相似,为了能够将大家的工程结构固定下来以及节约建工程的成本,所以给组内自定义了maven-archetype,中途遇到了 ...
- Maven自定义Archetype(zz)
原文地址:http://www.cnblogs.com/javalouvre/p/5858162.html Maven提供了archetype帮助我们快速构建项目骨架,很便捷.但是,中央仓库中的arc ...
- 创建maven自定义archetype项目
1.安装Nexus这里是用homebrew安装, brew nexus 安装成功后,默认的访问端口为8081, 我这里的访问地址是http://192.168.99.100:8081 默认用户:adm ...
- Maven之自定义archetype生成项目骨架(一)
Maven之自定义archetype生成项目骨架(一) 标签: mavennexus插件 2015-07-15 16:40 2443人阅读 评论(0) 收藏 举报 分类: Maven技术(9) ...
- Maven之自定义archetype生成项目骨架
Maven之自定义archetype生成项目骨架(一) http://blog.csdn.net/sxdtzhaoxinguo/article/details/46895013
- (转)Maven之自定义archetype生成项目骨架
背景:最近在开发一个项目的基础构件,在以后项目的开发过程中可以直接使用该构件快速的生成项目骨架进行开发. 摘要:使用过Maven的人都知道maven中有许多功能都是通过插件来提供的,今天我们来说一下其 ...
- 使用maven创建Archetype
Archetype原型 也就是说为项目生成一个原型,可以把这个项目发布,其他人就可以直接通过命令构建一个原型项目了. 其实我一开始也是不知道maven还有这个功能的,但是在使用的springside的 ...
- maven自定义骨架
Maven 的 archetype 技术,为新建标准化的工程框架提供了方便.为自定义一套工程框架标准,可参考以下步骤操作: 1,创建一个项目的原型 2,在项目根目录执行命令:mvn archetype ...
- maven3自定义archetype
maven使用起来还是很方便,但默认自带的archetype配置junit版本比较老.每次创建新项目都要手动修改junit版本,所以就想着能不能自己建一个新版本出来,省得每次手动修改的麻烦. 网上找了 ...
随机推荐
- hdu2082:简单母函数
题目大意: a,b,c,d...z这些字母的价值是1,2,3......26 给定 这26个字母分别的数量,求总价值不超过50的单词的数量 分析: 标准做法是构造母函数 把某个单词看作是,关于x的多项 ...
- 最快速的“高斯”模糊算法(附Android源码)
这是一个外国人的算法,本人是搬运工.参考:http://blog.ivank.net/fastest-gaussian-blur.html 1:高斯模糊算法(参考:http://www.rua ...
- map循环遍历删除
typedef map<string,int> MapFileList; int main() { MapFileList m_SingleList; m_SingleList.inser ...
- class 类(2)
类属性和实例属性 一个类实例化后,实例是一个对象,有属性.同样,类也是一个对象,它也有属性. >>> class A(object): ... x = 7 ... >>& ...
- [Javascript] Call Stack
Every time when a function run it will be push into the call stack and put on the top, you can thin ...
- silverlight visifire控件图表制作——silverlight 后台方法ControlChart.xaml.cs
一.构造方法ControlChart 1.前台页面控件赋值 //时间下拉框赋值,下拉框赋选定值 for (int ii = DateTime.Today.Year; ii ...
- (五)CodeMirror - 关于htmlmixed中包含script脚本
最近发现个问题,场景如下: 当创建的mode类型为htmlmixed,且内容中包含javascript脚本,且是闭包立即执行: 如果内容是使用JQuery函数.html()插入到DOM中后再创建cod ...
- poj1915 BFS
D - 广搜 基础 Crawling in process... Crawling failed Time Limit:1000MS Memory Limit:30000KB 64bi ...
- smarty模板引擎中section循环loop与total的区别
在smarty模板引擎的section循环中 $data=[101,102,103,105,104]; section的两个属性total与loop {section foo $data start= ...
- [转载]移动终端浏览器初始设置apple-mobile-web-app-capable
这两句话的确很有用,有了它,手机访问的时候像样了. 原文地址:移动终端浏览器初始设置apple-mobile-web-app-capable作者:素水凌心 移动终端浏览器默认设置视口的宽度和初始规模. ...