转载 Maven常用命令
Maven库:
http://repo2.maven.org/maven2/
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. 反向生成 maven 项目的骨架:
mvn archetype:generate
缩写写法:
mvn archetype:generate -DgroupId=com.nana.do -DartifactId=study-do -Dversion=0.01-SNAPSHOT
4. 编译源代码:
mvn compile
5. 编译测试代码:
mvn test-compile
6. 运行测试:
mvn test
7. 产生site:
mvn site
8. 打包:
mvn package
9. 在本地Repository中安装jar:
mvn install
例:installing D:xxxxx.jar to D:xxxxxx
10. 清除产生的项目:
mvn clean
11. 生成eclipse项目:
mvn eclipse:eclipse
12. 生成idea项目:
mvn idea:idea
13. 组合使用goal命令,如只打包不测试:
mvn -Dtest package
14. 编译测试的内容:
mvn test-compile
15. 只打jar包:
mvn jar:jar
16. 只测试而不编译,也不测试编译:
mvn test -skipping compile -skipping test-compile
( -skipping 的灵活运用,当然也可以用于其他组合命令)
17. 清除eclipse的一些系统设置:
mvn eclipse:clean
18.查看当前项目已被解析的依赖:
mvn dependency:list
19.上传到私服:
mvn deploy
20. 强制检查更新,由于快照版本的更新策略(一天更新几次、隔段时间更新一次)存在,如果想强制更新就会用到此命令:
mvn clean install-U
21. 源码打包:
mvn source:jar
或
mvn source:jar-no-fork
注:mvn compile与mvn install、mvn deploy的区别:
- mvn compile,编译类文件
- mvn install,包含mvn compile,mvn package,然后上传到本地仓库
- mvn deploy,包含mvn install,然后,上传到私服
22.显示版本信息 :
mvn -version/-v
23.生成target目录,编译、测试代码,生成测试报告,生成jar/war文件 :
mvn package
24.运行项目于jetty上:
mvn jetty:run
25.显示详细错误 信息:
mvn -e
26.验证工程是否正确,所有需要的资源是否可用:
mvn validate
27.在集成测试可以运行的环境中处理和发布包:
mvn integration-test
28.运行任何检查,验证包是否有效且达到质量标准:
mvn verify
29.产生应用需要的任何额外的源代码,如xdoclet :
mvn generate-sources
30.使用 help 插件的 describe 目标来输出 Maven Help 插件的信息:
mvn help:describe -Dplugin=help
31.使用Help 插件输出完整的带有参数的目标列 :
mvn help:describe -Dplugin=help -Dfull
32.获取单个目标的信息,设置 mojo 参数和 plugin 参数。此命令列出了Compiler 插件的compile 目标的所有信息 :
mvn help:describe -Dplugin=exec -Dfull
33.列出所有 Maven Exec 插件可用的目标:
mvn help:describe -Dplugin=exec -Dfull
34.看这个“有效的 (effective)”POM,它暴露了 Maven的默认设置 :
mvn help:effective-pom
35.想要查看完整的依赖踪迹,包含那些因为冲突或者其它原因而被拒绝引入的构件,打开 Maven 的调试标记运行 :
mvn install -X
36.给任何目标添加maven.test.skip 属性就能跳过测试 :
mvn install -Dmaven.test.skip=true
37.构建装配Maven Assembly 插件是一个用来创建你应用程序特有分发包的插件 :
mvn install assembly:assembly
38.生成Wtp插件的Web项目 :
mvn -Dwtpversion=1.0 eclipse:eclipse
38.清除Eclipse项目的配置信息(Web项目) :
mvn -Dwtpversion=1.0 eclipse:clean
39.mvn exec命令可以执行项目中的main函数 :
首先需要编译java工程:mvn compile 不存在参数的情况下:mvn exec:java -Dexec.mainClass="***.Main" 存在参数:mvn exec:java -Dexec.mainClass="***.Main" -Dexec.args="arg0 arg1 arg2" 指定运行时库:mvn exec:java -Dexec.mainClass="***.Main" -Dexec.classpathScope=runtime
40.打印出已解决依赖的列表 :
mvn dependency:resolve
41.打印整个依赖树 :
mvn dependency:tree
42.在应用程序用使用多个存储库:
<repositories> <repository> <id>Ibiblio</id> <name>Ibiblio</name> <url>http://www.ibiblio.org/maven/</url> </repository> <repository> <id>PlanetMirror</id> <name>Planet Mirror</name> <url>http://public.planetmirror.com/pub/maven/</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/
43.发布第三方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
二、附加
1.mvn描述信息:
mvn help:describe
-Dplugin=pluginName
-Dgoal(或-Dmojo)=goalName:与-Dplugin一起使用,它会列出某个插件的goal信息
2.使用mvn命令运行tomcat:
mvn tomcat:run
mvnDebug tomcat:run
跳过测试:-Dmaven.test.skip(=true)
指定端口:-Dmaven.tomcat.port=9090
忽略测试失败:-Dmaven.test.failure.ignore=true 当然,如果你的其它关联项目有过更新的话,一定要在项目根目录下运行mvn clean install来执行更新,再运行mvn tomcat:run使改动生效.
3.添加项目中依赖jar包的源码:
mvn dependency:sources