首先:Maven 3.2.1:不同版本中仓库中文件是不一样的,Maven运行,先找用户配置,再找全局配置
1. Maven全局配置:全局统一的配置文件,在maven的安装目录中
2. Maven用户配置:针对某一个开发环境所设的配置文件,在操作系统下的这个目录下有一个setting.xml
为了方便操作,建议只使用全局配置,不适用.m2下边的setting.xml。
在全局setting.xml中配置本地仓库
<localRepository>E: epository epository</localRepository>
注意:在命令行执行maven命令,只找全局配置
Eclipse执行:不配置全局,只需要配置maven用户配置:在本地仓库中创建一个setting.xml,此文件就是eclipse执行maven,找maven用户配置文件,目的是,读到这个文件的仓库地址
如何判断maven和eclipse整合好了呢,在eclipse中打开以下视图
发现下面内容则表示整合完成,可以使用仓库中的jar包
3.安装,
①http://maven.apache.org/download.cgi 下载maven,解压
②配置环境变量 M2_HOME D:mavenapache-maven-3.3.9
path %M2_HOME%in
③检测是否安装成功:cmd mvn -version
4.MyEclipse中配置Windows -> Preferences -> MyEclipse -> Maven4MyEclipse ->Installations //D:apache-maven-3.3.9-binapache-maven-3.3.9
4. 创建maven项目:
maven只说两种,一种quickstart,一种webapp
1. quickstart:仅仅配置依赖没有必要用webapp,使用quickstart就可以
5. GAV三坐标
G : Group Id (公司或者组织名称,不准确),应该是项目名称
A : Artifact Id 模块名称
V : Version
6. 创建一个maven工程,在pom.xml配置相应的依赖(例如springmvc,mybatis)
关键:①从mybatis官网下载mybatis的jar包,在mybatis目录中找到pom.xml文件,得到mybatis所有依赖的jar包的gav。
②再找mybatis和spring整合jar包,从mybatis官方网站下载mybatis整合包。同上找到pom.xml文件,找到之后发现pom.xml中mybatis和spring3.1.4整合,只需要将上面找到的两个pom.xml内容结合放到本系统技术架构模块pom.xml中。(过程中解决包与包之间的冲突工作)
关于 6 的解释
①从mybatis官网下载mybatis的jar包,
在mybatis目录中找到pom.xml文件,得到mybatis所有依赖的jar包的GAV
②再找mybatis和spring整合jar包,从mybatis官方网站下载mybatis整合包。
同上找到pom.xml文件,找到GAV,
只需要将上边找到的两个pom.xml内容结合放到本系统技术架构模块pom.xml中。
整合后pom.xml,就会在maven依赖中出现相应的jar包,如下图
7. 确定java的编译版本
工程右击->执行下图
7. maven项目聚合
开发在eclipse中开发,将代码提交到svn
测试从svn上得到代码,编译,打成war包,将war包拷贝到测试服务器
测试人员将各个模块从svn下得到,只需要在聚合工程,运行mave命令,将各个工程聚合,生成war包
创建聚合工程yycgparent:
负责:将各个功能模块聚合
创建maven工程yycgparent,不需要开发,quickstart就可以,
pom.xml 内容
(1)
1 改 <packaging>jar</packaging>为 <packaging>pom</packaging>
(2)
(3)需要在子模块中添加父模块节点,让子模块继承父模块。在子模块pom.xml中改为如下图
(4)聚合的目的是:在聚合工程目录中,运行maven命令,将各个工程聚合生成war包。①需要自动生成war包,需要在yycgproject的pom.xml添加生成war包的插件,如下代码:
1 <plugin> 2 <groupId>org.apache.maven.plugins</groupId> 3 <artifactId>maven-war-plugin</artifactId> 4 <version>2.4</version> 5 <configuration> 6 <warSourceDirectory>src/main/webapp</warSourceDirectory> 7 </configuration> 8 </plugin>
②为了生成war包之后,自动启动tomcat运行(达到一步构建,执行一个命令:编译,测试,打包,运行..),tomcat运行插件
1 <plugin> 2 <groupId>org.codehaus.cargo</groupId> 3 <artifactId>cargo-maven2-plugin</artifactId> 4 <version>1.2.3</version> 5 <configuration> 6 <container> 7 <containerId>tomcat7x</containerId> 8 <home>e:/apache-tomcat-7.0.52</home> //这里tomcat目录要改 9 </container> 10 <configuration> 11 <type>existing</type> 12 <home>e:/apache-tomcat-7.0.52</home> 13 </configuration> 14 </configuration> 15 <executions> 16 <execution> 17 <id>cargo-run</id> 18 <phase>install</phase> 19 <goals> 20 <goal>run</goal> 21 </goals> 22 </execution> 23 </executions> 24 </plugin>
(3)在cmd命令行执行工程聚合,达到一步构建:cmd进入yycgparent目录,这个目录必须有pom.xml文件
执行mvn命令
开发人员是可以这么运行的
cmd运行mvn命令,先找用户setting.xml(建议删除),再去找maven安装目录中的conf下的setting.xml(全局配置,一定要配置本地仓库),运行mvn install之后,检查本地仓库,是否三个工程的jar包已经发布到本地仓库