1. 首先使用命令:
mvn archetype:create -DgroupId=com.jwu
-DartifactId=jwu-archetype -DarchetypeArtifactId=maven-archetype-archetype
创建
arche
type。
该命令在当前目录创建了一个名为
jwu-archetype的
maven项目,具有
src目录和
pom.xml文件。
2. 然后修改
archetype
descriptor文件
archetype.xml,在
\jwu-archetype\src\main\resources\META-INF\maven
目录下:
<archetype>
<id>jwu-archetype</id>
<sources>
<source>src/main/java/App.java</source>
</sources>
<resources>
<resource>src/main/webapp/WEB-INF/web.xml</resource>
</resources>
<testSources>
<source>src/test/java/AppTest.java</source>
</testSources>
</archetype>
这里面不能指定空的目录,只能指定单个的文件。
resources目录会作为默认目录创建。
目录结构如下:
<none>
3. 然后再修改模板
pom.xml文件,该文件会作为以后项目生成时的模板,所以修改如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>${groupId}</groupId>
<artifactId>${artifactId}</artifactId>
<packaging>war</packaging>
<version>${version}</version>
<name>A custom project</name>
<url>http://www.mycom.com</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
注意里面的粗体值(
<groupId>${groupId}</groupId>
<artifactId>${artifactId}</artifactId>
<version>${version}</version>
),它们将被创建项目时指定的值代替。
4. 另外,还需要修改里面附带的一个测试文件:
App.java在
\src\main\resources\archetype-resources\src\main\java目录,删除该
java文件的包声明。
同样需要删掉对应的
AppTest.java文件的包声明,在
C:\yaowen\dev\playground\maven2projects\jwu-archetype
\src\main\resources\archetype-resources\src\test\java目录下。
这里为了方便,可以把要创建的
archetype指定一个简单的版本号,默认为
1.0-SNAPSHOT。
修改在
\jwu-archetype目录下的
pom.xml文件如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.jwu</groupId>
<artifactId>jwu-archetype</artifactId>
<version>1.0</version>
<name>Archetype - jwu-archetype</name>
<url>http://maven.apache.org</url>
</project>
5. 进入
\jwu-archetype目录,执行
mvn
install命令,安装该
archetype。安装完成之后,在该目录会产生一个
target目录,同时在
maven的
repository目录生成
mavenRepo\m2\com\jwu\jwu-archetype\1.0\
jwu-archetype-1.0.jar及
jwu-archetype-1.0.pom等文件。
\dev\playground\maven2projects\jwu-archetype>mvn install
[INFO] [jar:jar]
[INFO] Building jar: C:\name\dev\playground\maven2projects\jwu-archetype\targe
t\jwu-archetype-1.0.jar
[INFO] [install:install]
[INFO] Installing
C:\name\dev\playground\maven2projects\jwu-archetype\target\j
wu-archetype-1.0.jar to
C:\yaoInstall\mavenRepo\m2\com\jwu\jwu-archetype\1.0\jwu
-archetype-1.0.jar
[INFO]
------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
表示安装成功。接下来就可以使用这个自定义的
archetype了。
参考文档:
http://maven.apache.org/plugins/maven-archetype-plugin/examples/archetype.html
创建测试项目:
infowu
\dev\playground\maven2projects\jwu-archetype>cd ..
退出
\jwu-archetype目录,执行
mvn命令:
\dev\playground\maven2projects\jwu-archetype>mvn
archetype:create
-DgroupId=com.jwu.info
-DartifactId=infowu -Dpackage=com.jwu.info.infowu -Dversion=1.0-SNAPSHOT -DarchetypeGroupId
=com.jwu -DarchetypeArtifactId
=jwu-archetype -DarchetypeVersion
=1.0
生成的目录结构如下:
<none>
测试一下生成的项目:
\dev\playground\maven2projects\infowu>mvn test
生成
eclipse项目:
\dev\playground\maven2projects\infowu>mvn eclipse:eclipse -Dwtpversion=2.0
这样就可以导入到
eclipse
IDE中进行进一步开发了。
分享到:
相关推荐
第13章:使用Maven生成项目原型/13.2 编写自己的项目原型/13.2.1 自定义项目原型结构组成 第13章:使用Maven生成项目原型/13.2 编写自己的项目原型/13.2.2 命令行生成项目原型项目 第13章:使用Maven生成项目原型/...
在Maven2中建议使用自定义的plugin来封装这些内容。 如果仍期望能够使用类似maven.xml的功能,如,请参考Inserting non-standard build steps using preGoals and postGoals。 在Maven2中,配置使用settings.xml,...
2. 安装和运行Maven 2.1. 验证你的Java安装 2.2. 下载Maven 2.3. 安装Maven 2.3.1. 在Mac OSX上安装Maven 2.3.2. 在Microsoft Windows上安装Maven 2.3.3. 在Linux上安装Maven 2.3.4. 在FreeBSD或OpenBSD上...
Maven模板创建一个最小的,基于最佳实践的Adobe Experience Manager(AEM)项目作为您网站的起点。 文献资料 :原型架构及其不同模块的概述。 以下教程基于该原型: :了解如何启动一个全新的网站。 WKND SPA...
使用@ServerEndpoint创建WebSocket端点 xvii. 64.17. 启用HTTP响应压缩 i. 64.17.1. 启用Tomcat的HTTP响应压缩 ii. 64.17.2. 使用GzipFilter开启HTTP响应压缩 iv. 65. Spring MVC i. 65.1. 编写一个JSON REST服务 ...
2、自定义身份属性:图灵机器人平台所提供的ChatBot支持充分的机器人一体化身份属性自定义,开发者通过平台页面对机器人的20多个常见属性进行快捷设置,打造具备个性化身份属性的ChatBot。[2] 3、情感识别引擎:图灵...
073 使用 MyBatis Maven Plugin 自动生成代码 074 集成 MyBatis-测试查询 第7章 项目实战 075项目简介 076 创建依赖管理项目 077 创建通用工具项目 078 创建数据库管理项目 079 创建领域模型项目 080 创建管理...
073 使用 MyBatis Maven Plugin 自动生成代码 074 集成 MyBatis-测试查询 第7章 项目实战 075项目简介 076 创建依赖管理项目 077 创建通用工具项目 078 创建数据库管理项目 079 创建领域模型项目 080 ...
2.1、创建一个Maven工程 2 2.2、pom文件引入依赖 3 2.3、编写HelloWorld服务 3 2.4、@RestController 4 2.5、@EnableAutoConfiguration 4 2.6 SpringApplication.run(HelloController.class, args); 4 2.7、...
当前存储库包含一个示例内容包,提供了一个内容结构,该内容结构说明了自定义模板类型的创建。 描述: 当前的内容包提供: 具有以下内容的自定义页面组件 具有动态值的额外开放图元标记 页面属性对话框上的额外...
Gradle In Action(Gradle实战)中文版 ...Maven的一个严格的约定就是每个项目都要生成一个artifact,比如jar文件,但是 你怎么从同一个源代码结构中创建两个不同的JAR文件,因此你不得不分开创建两个项目。
项目结构 目录 描述 frontend/ 客户端源目录 index.html HTML模板 index.ts 前端入口点,包含使用的客户端路由设置 main-layout.ts 主布局Web组件,包含导航菜单,使用 views/ UI视图Web组件(TypeScript) ...
附录A:使用Maven A.1。将Wicket切换到DEPLOYMENT模式 A2。从头开始创建Wicket项目并将其导入我们最喜欢的IDE 附录B:项目WicketStuff B.1。什么是项目WicketStuff B.2。模块tinymce B.3。模块wicketstuff-gmap3 B.4...
涵盖安装、配置、常见问题&技巧、Maven、Git、Tomcat、快捷键、项目配置等. 入门................................................................................................................................
项目结构 src/main/java中的MainView.java包含导航设置。 它使用 。 src/main/java中的views软件包包含应用程序的服务器端Java视图。 frontend/src/中的views文件夹包含应用程序的客户端JavaScript视图。 接下来是...
dockerfile 是一个文本格式的配置文件, 用户可以使用 Dockerfile 来快速创建自定义的镜像,另外,使用Dockerfile去构建镜像好比使用pom去构建maven项目一样,有异曲同工之妙 dockerfile基本结构 Dockerfil
│ 10.Maven项目模块划分-创建项目 │ 11.Maven项目模块划分-引用依赖包( f- {5 L4 F2 i8 z+ c* U │ 12.项目环境搭建细节-监听器 │ 13.项目环境搭建细节-过滤器 │ 14.项目环境搭建细节-核心控制器 │ 15.项目环境...
平台使用了maven作为项目管理,使用了web开发流行的框架便于学习使用,具体使用了spring、springmvc、apache?shiro、hibernate、spring?data?jpa、ehcache等框架,为了统一页面风格使用DWZ作为页面富客户端的展示。 ...
创建和使用自定义组件 范围界定 使用引导程序进行静态导航,将模板更改为引导程序 验证和消息 编码 自定义转换器 新话题 我继续使用这个项目来制作小功能的原型。 添加以下主题: 动态表单:用户可扩展的表单。 ...