maven command(转)

Source: http://hi.baidu.com/anonymas/blog/item/e63996ca0c76961d7e3e6f94.html

 

生命周期阶段以及对应的目标
http://hi.baidu.com/anonymas/blog/item/08384d44975c91036a63e527.html

maven标准目录结构
http://hi.baidu.com/anonymas/blog/item/a1e849f6c85aff64dcc474eb.html

Profile定义/系统与环境变量列表
http://hi.baidu.com/anonymas/blog/item/da847e109a1e805bf919b861.html

POM参考以及POM最佳实践
http://hi.baidu.com/anonymas/blog/item/c4b604aba1eae3f61f17a2a8.html

用来查找某个制品的maven路径
http://www.mvnrepository.com/

maven官方plugin列表
http://maven.apache.org/plugins/index.html

mojo项目的plugin的列表
http://mojo.codehaus.org/plugins.html

Maven手册的地址
http://www.sonatype.com/books/maven-book/reference_zh/public-book.html
http://www.sonatype.com/books/maven-book/reference/

官方POM文件完整参考
http://maven.apache.org/ref/2.2.1/maven-model/maven.html

官方settings文件完整参考
http://maven.apache.org/settings.html

官方依赖机制介绍
http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

mvn archetype:generate 列出所有可用的模板供选择并创建

mvn dependency:analyze 使用Maven Dependency插件进行优化
mvn dependency:resolve 已解决依赖的列表
mvn dependency:tree 项目的整个依赖树

mvn install -X 查看完整的依赖踪迹,包含那些因为冲突或者其它原因而被拒绝引入的构件 (慎用,输出信息巨大)

mvn scm:checkin -Dmessage="Message"
mvn scm:checkout
mvn scm:update

mvn help:effective-pom 查看项目的有效POM
mvn help:active-profiles 列出活动的Profile

mvn eclipse:eclipse 生成eclipse项目
mvn eclipse:clean

mvn test -Dtest=MyTest 只对src.test.java下的MyTest类进行测试
mvn test -Dtest=MyTest -DfailIfNoTests=false 如果测试类里没有测试方法不报错

mvn package -Dmaven.test.skip=true 打包之前不执行单元测试

mvn jetty:run
jetty插件运行web程序

exec
插件可以用来运行程序
surefire 插件可以用来测试程序

mvn archetype:create -DgroupId=com.mycompany.app    -DartifactId=my-webapp       -DarchetypeArtifactId=maven-archetype-web

mvn clean install -Pproduction -X

mvn install -Dmaven.test.skip=true
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>

mvn assembly:assembly

<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>

mvn install:install-file
-Dfile=<path-to-file>
-DgroupId=<group-id>
-DartifactId=<artifact-id>
-Dversion=<version>
-Dpackaging=<packaging>

-DgeneratePom=true
-DcreateChecksum=true
-DpomFile=path-to-pom
-DlocalRepositoryPath=path-to-specific-local-repo
-DlocalRepositoryId=id-for-specific-local-repo

mvn deploy:deploy-file
-Durl=file
-DrepositoryId=some.id
-Dfile=path-to-your-artifact-jar
-DgroupId=your.groupId
-DartifactId=your-artifactId
-Dversion=version
-Dpackaging=jar
-DgeneratePom=false
-DpomFile=path-to-your-pom.xml
-Dclassifier=bin
-DuniqueVersion=false

mvn archetype:generate

-DarchetypeGroupId=org.simple
-DarchetypeArtifactId= simple
-DarchetypeVersion=1.0-SNAPSHOT


mvn clean install

生命周期阶段描述
validate验证项目是否正确,以及所有为了完整构建必要的信息是否可用
generate-sources生成所有需要包含在编译过程中的源代码
process-sources处理源代码,比如过滤一些值
generate-resources生成所有需要包含在打包过程中的资源文件
process-resources复制并处理资源文件至目标目录,准备打包
compile编译项目的源代码
process-classes后处理编译生成的文件,例如对Java类进行字节码增强(bytecode enhancement)
generate-test-sources生成所有包含在测试编译过程中的测试源码
process-test-sources处理测试源码,比如过滤一些值
generate-test-resources生成测试需要的资源文件
process-test-resources复制并处理测试资源文件至测试目标目录
test-compile编译测试源码至测试目标目录
test使用合适的单元测试框架运行测试。这些测试应该不需要代码被打包或发布
prepare-package在真正的打包之前,执行一些准备打包必要的操作。这通常会产生一个包的展开的处理过的版本(将会在Maven 2.1+中实现)
package将编译好的代码打包成可分发的格式,如JARWAR ,或者EAR
pre-integration-test执行一些在集成测试运行之前需要的动作。如建立集成测试需要的环境
integration-test如果有必要的话,处理包并发布至集成测试可以运行的环境
post-integration-test执行一些在集成测试运行之后需要的动作。如清理集成测试环境。
verify执行所有检查,验证包是有效的,符合质量规范
install安装包至本地仓库,以备本地的其它项目作为依赖使用
deploy复制最终的包至远程仓库,共享给其它开发人员和项目(通常和一次正式的发布相关)


mvn jar:jar
JAR打包默认的目标

生命周期阶段目标
process-resourcesresources:resources
compilecompiler:compile
process-test-resourcesresources:testResources
test-compilecompiler:testCompile
testsurefire:test
packagejar:jar
installinstall:install
deploydeploy:deploy


POM打包默认的目标

生命周期阶段目标
packagesite:attach-descriptor
installinstall:install
deploydeploy:deploy


EJB打包默认的目标

生命周期阶段目标
process-resourcesresources:resources
compilecompiler:compile
process-test-resourcesresources:testResources
test-compilecompiler:testCompile
testsurefire:test
packageejb:ejb
installinstall:install
deploydeploy:deploy

Maven提供了对EJB 2和3的支持。必须配置EJB 插件来为EJB3 指定打包类型,否则该插件默认认为EJB 为2.1,并寻找某些EJB 配置文件是否存在。

WAR打包默认的目标

生命周期阶段目标
process-resourcesresources:resources
compilecompiler:compile
process-test-resourcesresources:testResources
test-compilecompiler:testCompile
testsurefire:test
packagewar:war
installinstall:install
deploydeploy:deploy

注意war:war 插件需要一个web.xml 配置文件在项目的src/main/webapp/WEB-INF 目录中。

EAR打包默认的目标

生命周期阶段目标
generate-resourcesear:generate-application-xml
process-resourcesresources:resources
packageear:ear
installinstall:install
deploydeploy:deploy



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值