入门
OS X使用brew安装
brew instal maven
然后建立一个项目,在根目录下建立pom.xml文件;
或者找一个开源项目如 https://github.com/spring-projects/spring-mvc-showcase
可以查看他的pom.xml文件
Maven管理生命周期
Maven有三套独立的生命周期,分别是clean:目的是清理项目,default:构建项目,site:建立项目站点。这些都是通过插件来运行的,maven默认已经导入了必要的插件,如果还需要其他的可以自己导入。
每个周期有不同的阶段,
clean:
pre-clean,
clean 清理上一次构建生成的文件,
post-clean 执行清理后需要完成的工作,
mvn clean 清理命令;
mvn clean compile清理编译命令;
mvn clean test测试命令;
default 周期比较复杂,主要完成编译测试并且安装到maven仓库的功能,
mvn package 把maven项目打包成jar包或者war包;
mvn package -Dmaven.test.skip=true maven打包不执行测试用例的命令;
mvn install 打包之后安装到本地仓库,然后其他项目可以引用;
site 周期用于生成项目站点,用于交流和发布项目信息,
mvn site 生成项目网站目录;
同时运行两个生命周期,
mvn clean package 打包命令;
mvn clean site生成网站命令;
其他,
mvn eclipse:eclipse 生成eclipse项目管理文件;
mvn idea:idea 生成idea项目管理文件;
mvn jetty:run 运行项目于内嵌jetty服务器,也可以使用mvn tomcat:run 用tomcat运行;
怎样查找(定位)maven中央仓库中的库:
可以通过groupId,artifactId,version,packaging,class-sider等来定位唯一的一个库;
groupId:定义当前Maven项目隶属项目
artifactId:定义实际项目中的一个模块
version:定义当前项目的当前版本
packaging:定义该项目的打包方式当不定义packaging的时候,Maven 会使用默认值jar
classifier: 该元素用来帮助定义构建输出的一些附件,比如TestNG的主构建是基于jdk4的,它有提供了一个jdk5的附属构件
也可以访问https://search.maven.org搜索
仓库类型
本地仓库:默认为~/.m2/repository/ ,每个用户只有一个本地仓库
cd ~/.m2/repository/
远程仓库
中央仓库:Maven默认的远程仓库, http://repo1.maven.org/maven2
镜像:用来替代中央仓库,下载速度一般比中央仓库快
maven添加镜像地址:修改~/.m2/settings.xml
vim ~/.m2/settings.xml
# 输入
<mirrors>
<mirror>
<id>ibiblio.org</id>
<mirrorOf>central</mirrorOf> #central表示是中央仓库的镜像
<name>ibiblio Mirror of http://repo1.maven.org/maven2/</name>
<url>http://mirrors.ibiblio.org/pub/mirrors/maven2</url>
</mirror>
<mirror>
<id>jboss-public-repository-group</id>
<mirrorOf>central</mirrorOf>
<name>JBoss Public Repository Group</name>
<url>http://repository.jboss.org/nexus/content/groups/public</url>
</mirror>
<mirror>
<id>nexus-osc</id>
<mirrorOf>*</mirrorOf> #表示所有仓库的镜像,任何对远程仓库的请求都会被重定向
<name>Nexus osc</name>
<url>http://maven.oschina.net/content/groups/public/</url>
</mirror>
</mirrors>