博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
maven安装与创建多模块项目
阅读量:4933 次
发布时间:2019-06-11

本文共 6492 字,大约阅读时间需要 21 分钟。

最新版已同步至 

maven是一个比较流行的项目管理工具,在最近参与的项目中,也使用了maven,本文主要对在项目中的使用做一个总结,主要涉及maven的安装于配置、maven创建多模块项目。

1、maven安装与配置

maven的安装与配置非常简单,具体步骤如下:

  1、首先到http://maven.apache.org/download.cgi下载maven的包,可以选择下载:。

  2、解压下载的文件到电脑硬盘的某个目录,比如D:\Program Files\

  3、然后在环境变量中配置MAVEN_HOME=D:\Program Files\apache-maven-3.2.1-bin

  4、在path中添加%MAVEN_HOME%\bin;

完成以上步骤,在运行 cmd 中 输入 mvn -version出现如下:

安装成功。

如果需要指定本地仓库的位置进入安装目录,config打开setting.xml设置

D:\Repositories\Maven

注意:在使用ecplise时注意配置Windows->Perferences->User Settings 中User Settings选择以上的setting.xml

maven的安装于配置已经完成了,需要了解更多的maven基础资料可以访问如下:

http://maven.apache.org/guides/index.html

http://maven.apache.org/pom.html

2、maven创建多模块项目

在开发web项目时,一般分为domain(领域对象)、persist(持久化)、service(业务)、web(web交互)四个模块。在有的项目中还按照不同的业务进行划分几个模块,每个模块包含这几个模块。

使用maven创建多模块项目步骤如下(以一个blogs为名字的项目为例):

1、创建blogs-root,用于各个模块集成。

(1)、进入命令行,输入如下:

mvn archetype:create -DgroupId=org.yywang -DartifactId=blogs-root -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveModel=false

在当前目录下,创建了一个blogs-root的目录,进入blogs-root有两个文件,src、pom.xml文件。

删除src文件。

(2)、修改pom文件

修改pom文件中的 <packaging>jar</packaging>为 <packaging>pom</packaging>

修改后的pom文件内容如下:

4.0.0
org.yywang
blogs-root
1.0-SNAPSHOT
pom
blogs-root
http://maven.apache.org
UTF-8
junit
junit
3.8.1
test

2、创建blogs-domain,领域模型模块

(1)、进入blogs-root,进入命令行,输入

mvn archetype:create -DgroupId=org.yywang -DartifactId=blogs-domain -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveModel=false

 在blogs-root目录下创建了blogs-domain目录。

在blogs-root目录下pom文件中增加了一个模块

blogs-domain

 (2)、修改blogs-domain下的pom文件

删除 <groupId>org.yywang</groupId>和<version>1.0-SNAPSHOT</version>,添加<packaging>jar</packaging>。

修改后的pom文件如下:

4.0.0
org.yywang
blogs-root
1.0-SNAPSHOT
blogs-domain
jar
blogs-domain
http://maven.apache.org
UTF-8
junit
junit
3.8.1
test

 3、创建blogs-persist,持久化模块

(1)、在blogs-root目录,进入命令行,输入

mvn archetype:create -DgroupId=org.yywang -DartifactId=blogs-persist -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveModel=false

  在blogs-root目录下,增加了blogs-persist目录。

  在blogs-root目录下的pom文件,modules节点下多了<module>blogs-persist</module>

(2)、修改blogs-persist目录下的pom文件增加blogs-domain的依赖,修改为如下:

4.0.0
org.yywang
blogs-root
1.0-SNAPSHOT
blogs-persist
jar
blogs-persist
http://maven.apache.org
UTF-8
org.yywang
blogs-domain
${project.version}
junit
junit
3.8.1
test

 3、创建blogs-service,业务模块

(1)、在blogs-root目录,进入命令行,输入

mvn archetype:create -DgroupId=org.yywang -DartifactId=blogs-service -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveModel=false

  在blogs-root目录下,增加了blogs-service目录。

  在blogs-root目录下的pom文件,modules节点下多了<module>blogs-service</module>

(2)、修改blogs-service目录下的pom文件增加blogs-persist的依赖,修改为如下:

4.0.0
org.yywang
blogs-root
1.0-SNAPSHOT
blogs-service
jar
blogs-service
http://maven.apache.org
UTF-8
org.yywang
blogs-persist
${project.version}
junit
junit
3.8.1
test

  4、创建blogs-web,web交互模块

  (1)、在blogs-root目录,进入命令行,输入

mvn archetype:create -DgroupId=org.yywang -DartifactId=blogs-web -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveModel=false

  在blogs-root目录下,增加了blogs-web目录。

  在blogs-root目录下的pom文件,modules节点下多了<module>blogs-web</module>

 (2)、修改blogs-web目录下的pom文件增加blogs-service的依赖,修改为如下:

4.0.0
org.yywang
blogs-root
1.0-SNAPSHOT
blogs-web
war
blogs-web Maven Webapp
http://maven.apache.org
org.yywang
blogs-service
${project.version}
junit
junit
3.8.1
test
blogs-web

完成所有模块的创建后,blogs-root目录下的pom文件如下:

4.0.0
org.yywang
blogs-root
1.0-SNAPSHOT
pom
blogs-root
http://maven.apache.org
UTF-8
junit
junit
3.8.1
test
blogs-domain
blogs-persist
blogs-service
blogs-web

这样就完成了maven多模块项目的创建。

转载于:https://www.cnblogs.com/JerryWang1991/p/3638817.html

你可能感兴趣的文章
面试介绍项目经验(转)
查看>>
创建并设置ASP.NET的会话状态服务器(SQL State Server)
查看>>
<metro>Google的验证
查看>>
SQL中NUMERIC和DECIMAL的区别
查看>>
安卓课程设计:微课表
查看>>
Oracle 表的分组操作
查看>>
在OS X上的Intllij Idea中配置GlassFish
查看>>
用查表法快速转换yv12到RGB【转】
查看>>
使用公钥登录SSL
查看>>
实验四 shell 编程(2)
查看>>
hdu 1290_献给杭电五十周年校庆的礼物
查看>>
Nginx 入门
查看>>
openCR-用ROS代码点亮LED的方法
查看>>
豆瓣电影api
查看>>
BufferedInputStream和FileInputStream的区别
查看>>
二阶段之六
查看>>
微博爬虫 python
查看>>
中石油 【递归】普通递归关系
查看>>
vue报错Error in render: "TypeError: Cannot read property '0' of undefined"
查看>>
silverlight 隐藏ChildWindow 右上角的关闭按钮
查看>>