跳至内容
wiki
用户工具
登录
站点工具
工具
显示页面
修订记录
反向链接
最近更改
媒体管理器
网站地图
登录
最近更改
媒体管理器
网站地图
您的足迹:
分享:技术:maven:archetype的制作和使用
本页面只读。您可以查看源文件,但不能更改它。如果您觉得这是系统错误,请联系管理员。
====== archetype的制作和使用 ====== ===== 先谈谈背景 ===== 每开始一个maven项目,必做的就是配置一堆的配置文件,和pom.xml里一堆的依赖插件版本号,写一堆的controller,serivce,dao,vo,mapper等重复性的动作。为了不重复做这些事情,所以考虑做一个[[分享:技术:示例项目:springmvc_mybatis_spring_freemarker_maven|springmvc+mybatis+spring+freemarker+maven示例项目]],根据这个示例项目制作模板或者成为原型。在maven中我们使用archetype,意思解释为原型。 ===== archetype的制作 ===== 这里注意一点,被制作archetype的maven项目pom.xml必须引入maven-archetype-plugin插件 <code xml> <plugins> <!-- 原型插件 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-archetype-plugin</artifactId> <version>2.2</version> </plugin> </plugins> </code> 在做完[[分享:技术:示例项目:springmvc_mybatis_spring_freemarker_maven|springmvc+mybatis+spring+freemarker+maven示例项目]]后,根究以下步骤来制作archetype cd D:\05.HeadWorkspace\record\ #进入项目目录,dir可以看到pom.xml mvn archetype:create-from-project #执行脚本 ##############################################输出内容 [INFO] Archetype created in D:\05.HeadWorkspace\record\target\generated-sources\ archetype [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 4.256s [INFO] Finished at: Mon Jul 06 16:47:42 CST 2015 [INFO] Final Memory: 6M/10M [INFO] ------------------------------------------------------------------------ ############################################## cd D:\05.HeadWorkspace\record\target\generated-sources\archetype #进入archetype目录 mvn install #如果只要生成archetype放到本地maven仓库.m2中,执行该脚本即可 #如果要生成archetype放到本地仓库.m2中同时发布到nexus私有仓库中供以后使用,需要修改archetype目录下的pom.xml,加入以下代码 ############################################## <!-- 版本发布管理 --> <distributionManagement> <!-- release稳定版本 --> <repository> <id>nexus-releases</id> <name>Nexus Release Repository</name> <url>http://121.43.104.34:8081/nexus/content/repositories/releases/</url> </repository> <!-- snapshots快照版本 --> <snapshotRepository> <id>nexus-snapshots</id> <name>Nexus Snapshot Repository</name> <url>http://121.43.104.34:8081/nexus/content/repositories/snapshots/</url> </snapshotRepository> </distributionManagement> ############################################## #由于nexus发布需要校验用户名和密码,所以maven deploy要发布成功,必须在maven的目录中修改apache-maven-3.0/conf/settings.xml,注意server标签中的id与repository标签中的id要一致,用户名密码即nexus中用户名密码 ############################################## <servers> <server> <id>nexus-releases</id> <username>admin</username> <password>admin123</password> </server> <server> <id>nexus-snapshots</id> <username>admin</username> <password>admin123</password> </server> </servers> ############################################## mvn deploy #要生成archetype放到本地仓库.m2中同时发布到nexus私有仓库中供以后使用 上nexus私有仓库查看刚生成的record-archetype {{ :分享:技术:maven:archetype截图1.png?300 |}} ===== archetype的使用 ===== archetype的使用指的是,根据制作好的archetype来生成项目,分两种情况: - 刚制作完archetype的机器环境中,.m2文件夹下会有一个archetype-catalog.xml文件,里面会有record-archetype,使用eclipse可以搜索到该原型,可以直接创建项目 - 没有制作过archetype的机器环境中,.m2文件夹下没有archetype-catalog.xml文件,或者该文件中没有record-archetype,需要拷贝以下archetype-catalog.xml文件到.m2文件夹下或者把record-archetype的部分加到该文件中 <code xml archetype-catalog.xml> <?xml version="1.0" encoding="UTF-8"?> <archetype-catalog xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-catalog/1.0.0 http://maven.apache.org/xsd/archetype-catalog-1.0.0.xsd" xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-catalog/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <archetypes> <archetype> <groupId>com.gxx</groupId> <artifactId>record-archetype</artifactId> <version>0.0.1</version> <description>record-archetype</description> <repository>http://121.43.104.34:8081/nexus/content/repositories/releases/</repository> </archetype> </archetypes> </archetype-catalog> </code> 接下来演示在eclipse中通过record-archetype创建项目 {{ :分享:技术:maven:archetype截图2.png?300 |}} {{ :分享:技术:maven:archetype截图3.png?300 |}} {{ :分享:技术:maven:archetype截图4.png?300 |}} {{ :分享:技术:maven:archetype截图5.png?300 |}} 生成项目代码如下: {{ :分享:技术:maven:archetype截图6.png?300 |}} 全局搜索gxx修改成相应的域名,全局搜索record修改成相应的项目名,修改jdbc.properties数据库连接,根据以下脚本创建库表 <code sql database.sql> CREATE DATABASE mom; USE mom; CREATE TABLE `user` ( `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', `name` VARCHAR(50) NOT NULL COMMENT '姓名', `password` VARCHAR(32) NOT NULL COMMENT '密码', `create_date` VARCHAR(8) NOT NULL COMMENT '创建日期', `create_time` VARCHAR(6) NOT NULL COMMENT '创建时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COMMENT='用户表' </code> build项目,部署项目到tomcat,启动项目,测试: 访问http://localhost/mom/输出Hello World! 访问http://localhost/mom/user/preRegistFtl.htm输入姓名和密码,第一次查看库表创建记录成功页面提示成功,第二次提示该用户名已存在 访问http://localhost/mom/user/preRegistJsp.htm输入姓名和密码,第一次查看库表创建记录成功页面提示成功,第二次提示该用户名已存在
分享/技术/maven/archetype的制作和使用.1436248011.txt.gz
· 最后更改: 2015/07/07 13:46 由
gxx
页面工具
显示页面
修订记录
反向链接
回到顶部