自定义Maven项目骨架

以下用骨架代指Maven项目骨架,即archetype。

程序员使用自己定义的骨架开启一个新项目的快感不用多提,下面记录一个实用性强的自定义骨架流程。

从一个原型项目开始

首先

这个原型项目即是使用我们的骨架新建项目后的基本结构,拷贝原有Maven项目或新建项目都可。

然后

在该项目pom.xml中,添加maven-archetype-plugin插件:

1
2
3
4
5
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-archetype-plugin</artifactId>
<version>2.2</version>
</plugin>

最后

在原型项目pom.xml所在目录执行mvn archetype:create-from-project,执行完毕后就会在原型项目的generated-sourced/archetype目录生成最基本的骨架。如下便是骨架的基本目录结构:

其中,archetype-resources目录下是原型项目的所有文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
src
├─main
│ └─resources
│ ├─archetype-resources
│ │ └─src
│ │ └─main
│ │ ├─java
│ │ │ ├─controllers
│ │ │ │ └─api
│ │ │ ├─mapper
│ │ │ ├─model
│ │ │ └─service
│ │ ├─resources
│ │ │ ├─config
│ │ │ │ ├─addons
│ │ │ │ │ └─security
│ │ │ │ └─security
│ │ │ ├─mybatis
│ │ │ │ └─__artifactId__
│ │ │ │ └─mappers
│ │ │ ├─spring
│ │ │ │ └─__artifactId__
│ │ │ └─springmvc
│ │ │ └─__artifactId__
│ │ └─webapp
│ │ └─WEB-INF
│ │ └─freemarker
│ │ └─__artifactId__
│ │ └─shenqing
│ └─META-INF
│ └─maven
└─test
└─resources
└─projects
└─basic

如果原型项目足够简单,骨架就足够使用了,执行mvn install之后,我们就可在本地使用该骨架开始新项目了。否则继续下一步,进行骨架的加工。

骨架的加工

待续