maven 是一个包依赖管理工具,可以帮助你管理项目中各个包之间的依赖关系。而不需要你去手动把相关的包引入项目。 在日常开发中减少了很多工作量,能够使是程序员更加关注代码的编写。
安装mvaven 配置环境变量。 在命令行输入 mvn -v 可以验证maven是否安装成功并且可以查看maven安装的版本。
maven 处理能够管理包依赖,也可以构建打包项目。 配合持续集成jenkins,可以减少每次部署花费的时间。
安装完成maven后,会新建一个 .m2目录来存放 从网下下载的jar包,便于管理。
新建一个maven项目
maven 项目在根有一个 pom.xml 用来描述maven项目。 在pom.xml 里描述我们需要的依赖。maven就会去网上下载 相应的jar包。
-------------------创建maven java项目 生成的位置当前位置-----------
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=myapp -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
---------------------java web----------------------------------------
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-WebApp -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
创建一个 maven java项目 :
maven创建项目的命令说明
我们可以使用IDE来帮助我们创建 maven项目
-----------------------maven创建项目的命令说明---------------------mvn archetype:create / mvn archetype:generate
-DgroupId 组织标识(包名)
-DartifactId 项目名称
-DarchetypeArtifactId 指定创建项目的类型 java,java web …
-DinteractiveMode 是否使用交互模式
archetype 是maven内置的一个插件。DarchetypeArtifactId是可用的项目骨架目前有
maven-archetype-archetype
maven-archetype-j2ee-simple
maven-archetype-mojo
maven-archetype-portlet
maven-archetype-profiles (currently under development)
maven-archetype-quickstart
maven-archetype-simple (currently under development)
maven-archetype-site
maven-archetype-site-simple
maven-archetype-webapp
每个骨架都会建立相应的目录结构和一些通用文件
-DgroupId=com.mycompany.app — 包的开始 com.whtr com.ppmoney con.xuezhixin com.sun com.myname
-DartifactId=myapp ------项目名
依赖管理
打开 pom.xml 我们,可以看到 maven自动帮助我们引入了 junit 。
以后我们引入依赖的格式基本就是这样。
<scope> </scope> 可以不使用
pom相关标签解释
<project> --- pom文件的顶级节点
<modelVersion> ---object model版本,对于macen2.0 maven3.0来说,只能是4.0.0
<groupId> ----项目创建组织的标示符,一般是域名的倒写
<artifactId> ---定义了项目的所属组织的标示符下的唯一标示,一个组织可以有多个项目
<version> --当前项目的版本,SNAPSHOT,表示的是快照版本,在开发中、
<packaging> ---打包的方式,有jar, war ,ear 等
<name> ---项目的名称
<url> --项目的地址
<properties> --属性配置 比如:<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<dependencies></dependencies> --依赖
<dependency>
<groupId></groupId>
<artifactId></artifactId>
<version></version>
</dependency>
maven构建项目
项目构建过程
项目清理 ------> 编译--------> 测试 -----> 报告 -----> 打包 -----> 部署
对应的命令:
测试和报告会在 项目打包/部署的时候包含。
mvn -v ----查看maven版本
mvn clean ------清理构建的结果 清理
mvn compile ------编译项目 编译
mvn package ------打包项目 编译 打包
mvn install -------部署到本地仓库 编译 打包 部署
编译代码
在 项目目录下,输入 mvn compile 编译项目可以看见生成了 target 文件夹。
清理编译结果
使用 mvn clean 清理编译/打包结果
打包项目
使用 mvn package 打包项目,生成 jar包(可以是war ,在pom 配置)
部署到本地仓库
mvn install 会把生成的 jar 包放在本地仓库,这样其他项目就可以使用了,也可以发布到中央仓库。
一般要找相关 jar 把包的依赖 可以去下面的网站:
http://mvnrepository.com/
http://search.maven.org/#search%7Cga%7C1%7C