1、Maven 1. Maven主要功能: Ø 构建项目(Builds) Ø 文档编制(Documentation) Ø 报告(Reporting) Ø 依赖管理(Dependencies) Ø 配置管理(SCMs) Ø 发布管理(Releases) 2. Maven基本命令 Ø 创建Maven目录 mvn archetype:create -DgroupId=com.yourCompanyName -DartifactId=yourAppName Ø 测试 mvn test Ø 编译类 mvn compile Ø 打包 mvn package Ø 生成Site
2、 mvn site Ø 清除 mvn clean 以上命令都是在command窗口运行的.它们还可以混合运行,如mvn test compile package 3. Maven的生命周期及其与之对应的命令: validate:验证工程是否正确,所有需要的资源是否可用。 compile:编译项目的源代码。 test-compile:编译项目测试代码。 test:使用已编译的测试代码,测试已编译的源代码。 package:已发布的格式,如jar,将已编译的源代码打包。 integration-test:在集成测试可以运行的环境中处理和发布包。 verify
3、运行任何检查,验证包是否有效且达到质量标准。 install:把包安装在本地的repository中,可以被其他工程作为依赖来使用 deploy:在整合或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。 generate-sources:产生应用需要的任何额外的源代码,如xdoclet。、 4. pom.xml的结构 上面就是前次HelloMaven工程的pom.xml文件,我们可以通过修改其中的元素使工程按照我们的意图运行,对于接触Maven的人,主要就是和pom.xml文件在打交道. pom.xml文件
4、基本节点介绍:
5、地址下载,其中如果snapshot为资源快照,相对不稳定,
而release为稳定版本
6、项目需要的所有依赖的包
5. 完整pom.xml示例
6. 7、Version>
8、 9、>
10、oc
11、
12、Id>maven-javadoc-plugin
13、 config/sun_checks.xml
14、ifactId>
15、o
16、ENSE-2.0.txt
17、>
18、/role>
19、
20、 21、ien@
22、ne>-5
23、lways
24、
25、 26、s>
27、si="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
28、ervers/>
29、ment元素定义了开发库。然而,特定的username和pwd不能使用于pom.xml,所以通过此配置来保存server信息
30、
31、y,以及passphrase
•filePermissions, directoryPermissions:当库文件或者目录创建后,需要使用权限进行访问。参照unix文件许可,如664和775
Mirrors
表示镜像库,指定库的镜像,用于增加其他库
32、•id,name:唯一的标志,用于区别镜像
•url:镜像的url
•mirrorOf:此镜像指向的服务id
Proxies
此设置,主要用于无法直接访问中心的库用户配置。
33、assword>somepassword
34、repositories,pluginRepositories 和properties元素
刚开始接触的时候,可能会比较迷惑,其实profiles是maven2中比较强大的功能。从字面上来说,就是个性配置。
单独定义profile后,并不会生效,需要通过满足条件来激活。
repositories 和pluginRepositories
定义其他开发库和插件开发库。对于团队来说,肯定有自己的开发库。可以通过此配置来定义。
如下的配置,定义了本地开发库,用于release 发布。
35、
36、
37、8082/repo-local
38、epository> releases, snapshots:每个产品的版本的Release或者snapshot(注:release和snapshot的区别,release一般是比较稳定的版本,而snapshot基本上不稳定,只是作为快照) properties maven 的properties作为placeholder值,如ant的properties。 包括以下的5种类型值: 1.env.X:返回当前的环境变量 2.project.x:返回pom中定义的元素值,如project.version 3.s
39、ettings.x:返回settings.xml中定义的元素
4.java 系统属性:所有经过java.lang.System.getProperties()返回的值
5.x:用户自己设定的值
Activation
用于激活此profile
40、mily>
41、/file1.properties
•jdk:如果匹配指定的jdk版本,将会激活
•os:操作系统
•property:如果maven能检测到相应的属性
•file: 用于判断文件是否存在或者不存在
除了使用activation来激活profile,同样可以通过activeProfiles来激活
Active Profiles
表示激活的profile,通过profile id来指定。
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818