Apache Maven是一个软件项目打点和领略东西。基于项目工具模子(POM)的观念,Maven可以从一其中心信息打点项目标构建,陈诉和文档。
Maven利益:
约定优于设置
测试支持
构建简朴
插件富厚
Maven常用呼吁:1. 建设Maven的普通Java项目:
mvn archetype:create
-DgroupId=packageName
-DartifactId=projectName
2. 建设Maven的Web项目:
mvn archetype:create
-DgroupId=packageName
-DartifactId=webappName
-DarchetypeArtifactId=maven-archetype-webapp
3. 编译源代码: mvn compile
4. 编译测试代码:mvn test-compile
5. 运行测试:mvn test
6. 发生site:mvn site
7. 打包:mvn package
8. 在当地Repository中安装jar:mvn install
9. 排除发生的项目:mvn clean
10. 生成eclipse项目:mvn eclipse:eclipse
11. 生成idea项目:mvn idea:idea
12. 组合利用goal呼吁,如只打包不测试:mvn -Dtest package
13. 编译测试的内容:mvn test-compile
14. 只打jar包: mvn jar:jar
15. 只测试而不编译,也不测试编译:mvn test -skipping compile -skipping test-compile
( -skipping 的机动运用,虽然也可以用于其他组合呼吁)
16. 排除eclipse的一些系统配置:mvn eclipse:clean
ps:
一般利用环境是这样,首先通过cvs或svn下载代码到本机,然后执行mvn eclipse:eclipse生成ecllipse项目文件,然后导入到eclipse就行了;修改代码后执行mvn compile或mvn test检讨,也可以下载eclipse的maven插件。
mvn -version/-v 显示版本信息
mvn archetype:generate 建设mvn项目
mvn archetype:create -DgroupId=com.oreilly -DartifactId=my-app 建设mvn项目
mvn package 生成target目次,编译、测试代码,生成测试陈诉,生成jar/war文件
mvn jetty:run 运行项目于jetty上,
mvn compile 编译
mvn test 编译并测试
mvn clean 清空生成的文件
mvn site 生成项目相关信息的网站
mvn -Dwtpversion=1.0 eclipse:eclipse 生成Wtp插件的Web项目
mvn -Dwtpversion=1.0 eclipse:clean 排除Eclipse项目标设置信息(Web项目)
mvn -DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。
mvn -Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。
mvn eclipse:eclipse 将项目转化为Eclipse项目
在应用措施用利用多个存储库
<repositories>
<repository>
<id>Ibiblio</id>
<name>Ibiblio</name>
<url></url>
</repository>
<repository>
<id>PlanetMirror</id>
<name>Planet Mirror</name>
<url></url>
</repository>
</repositories>
mvn deploy:deploy-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar -DrepositoryId=maven-repository-inner -Durl=ftp://xxxxxxx/opt/maven/repository/
宣布第三方Jar到当地库中:
mvn install:install-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar
-DdownloadSources=true
-DdownloadJavadocs=true
mvn -e 显示具体错误 信息.
mvn -U 强制更新依赖包
mvn -B 该参数暗示让Maven利用批处理惩罚模式构建项目
mvn validate 验证工程是否正确,所有需要的资源是否可用。
mvn test-compile 编译项目测试代码。 。
mvn integration-test 在集成测试可以运行的情况中处理惩罚和宣布包。
mvn verify 运行任何查抄,验证包是否有效且到达质量尺度。
mvn generate-sources 发生应用需要的任何特另外源代码,如xdoclet。