一、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、打包
mvn package
7、安装命令,将工程的jar发布到本地仓库,目录安装本工程定义的坐标生成目录
mvn install
例:installing D:\xxx\xx.jar to D:\xx\xxxx
8、清理,清理target目录
mvn clean
9、生成eclipse项目
mvn eclipse:eclipse
10、生成idea项目
mvn idea:idea
11、组合使用命令,只打包不测试
mvn -Dtest package
12、编译测试的内容
mvn test-compile
13、只打jar包
mvn jar:jar
12、只测试而不编译
mvn test -skipping compile
13、清除eclipse的系统设置
mvn eclipse:clean
14、查看当前项目已被解析的依赖
mvn dependency:list
15、上传到私服
mvn deploy
16、强制检查更新
mvn clean install-U
17、源码打包
mvn source:jar
或
mvn source:jar-no-fork
18、运行项目与jetty上
mvn jetty:run
19、显示详细的错误信息
mvn -e
20、验证工程是否正确,所有需要的资源是否可用
mvn validate
21、在集成测试可以运行的环境中处理和发布包
mvn integration-test
22、运行任何检查,验证包是否有效且达到质量标准
mvn verify
23、使用 help 插件的 describe 目标来输出 Maven Help 插件的信息
mvn help:describe -Dplugin=help
24、使用Help 插件输出完整的带有参数的目标列
mvn help:describe -Dplugin=help -Dfull
25、获取单个目标的信息,设置 mojo 参数和 plugin 参数。此命令列出了Compiler 插件的compile 目标的所有信息
mvn help:describe -Dplugin=compiler -Dmojo=compile -Dfull
26、列出所有 Maven Exec 插件可用的目标:
mvn help:describe -Dplugin=exec -Dfull
27、看这个“有效的 (effective)”POM,它暴露了 Maven的默认设置
mvn help:effective-pom
28、想要查看完整的依赖踪迹,包含那些因为冲突或者其它原因而被拒绝引入的构件,打开 Maven 的调试标记运行
mvn install -X
29、给任何目标添加maven.test.skip 属性就能跳过测试
mvn install -Dmaven.test.skip=true
30、构建装配Maven Assembly 插件是一个用来创建你应用程序特有分发包的插件
mvn install assembly:assembly
31、生成Wtp插件的Web项目
mvn -Dwtpversion=1.0 eclipse:eclipse
32、清除Eclipse项目的配置信息(Web项目)
mvn -Dwtpversion=1.0 eclipse:clean
33、打印出已解决依赖的列表
mvn dependency:resolve
34、打印整个依赖树
mvn dependency:tree
35、运行项目与tomcat7上
tomcat7:run
36、本地jar包发布到本地仓库
mvn install:install-file -Dfile=d:\dubbo-2.8.4.jar -DgroupId=com.alibaba -DartifactId=dubbo -Dversion=2.8.4 -Dpackaging=jar
二、Maven命令参数
1、-D 传入属性参数
比如命令:
mvn package -Dmaven.test.skip=true
以“-D”开头,将“maven.test.skip”的值设为“true”,就是告诉maven打包的时候跳过单元测试。同理,“mvn deploy-Dmaven.test.skip=true”代表部署项目并跳过单元测试。
2、-P 使用指定的Profile配置
比如项目开发需要有多个环境,一般为开发,测试,预发,正式4个环境。
profiles定义了各个环境的变量id,filters中定义了变量配置文件的地址,其中地址中的环境变量就是上面profile中定义的值,resources中是定义哪些目录下的文件会被配置文件中定义的变量替换。
通过maven可以实现按不同环境进行打包部署,命令为:
mvn package -P dev
其中“dev“为环境的变量id,代表使用Id为“dev”的profile。
3、-e 显示maven运行出错的信息
4、-o 离线执行命令,即不去远程仓库更新包
5、-X 显示maven允许的debug信息
6、-U 强制去远程更新snapshot的插件或依赖,默认每天只更新一次