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 |
将编译好的代码打包成可分发的格式,如JAR
,WAR
,或者EAR
|
pre-integration-test |
执行一些在集成测试运行之前需要的动作。如建立集成测试需要的环境 |
integration-test |
如果有必要的话,处理包并发布至集成测试可以运行的环境 |
post-integration-test |
执行一些在集成测试运行之后需要的动作。如清理集成测试环境。 |
verify |
执行所有检查,验证包是有效的,符合质量规范 |
install |
安装包至本地仓库,以备本地的其它项目作为依赖使用 |
deploy |
复制最终的包至远程仓库,共享给其它开发人员和项目(通常和一次正式的发布相关) |
mvn jar:jar
JAR打包默认的目标
生命周期阶段
目标
process-resources |
resources:resources |
compile |
compiler:compile |
process-test-resources |
resources:testResources |
test-compile |
compiler:testCompile |
test |
surefire:test |
package |
jar:jar |
install |
install:install |
deploy |
deploy:deploy |
POM打包默认的目标
生命周期阶段
目标
package |
site:attach-descriptor |
install |
install:install |
deploy |
deploy:deploy |
EJB打包默认的目标
生命周期阶段
目标
process-resources |
resources:resources |
compile |
compiler:compile |
process-test-resources |
resources:testResources |
test-compile |
compiler:testCompile |
test |
surefire:test |
package |
ejb:ejb |
install |
install:install |
deploy |
deploy:deploy |
Maven提供了对EJB
2和3的支持。必须配置EJB
插件来为EJB3
指定打包类型,否则该插件默认认为EJB
为2.1,并寻找某些EJB
配置文件是否存在。
WAR打包默认的目标
生命周期阶段
目标
process-resources |
resources:resources |
compile |
compiler:compile |
process-test-resources |
resources:testResources |
test-compile |
compiler:testCompile |
test |
surefire:test |
package |
war:war |
install |
install:install |
deploy |
deploy:deploy |
注意war:war
插件需要一个web.xml
配置文件在项目的src/main/webapp/WEB-INF
目录中。
EAR打包默认的目标
生命周期阶段
目标
generate-resources |
ear:generate-application-xml |
process-resources |
resources:resources |
package |
ear:ear |
install |
install:install |
deploy |
deploy:deploy |
分享到:
相关推荐
Command $ maven search Then you will get a list of search results. Enter to copy the maven library url (the latest version) to clipboard. Backspace to get out of list. License MIT License
Linux 下搭建内网 Maven 私服 Maven 私服是 Maven 仓库的私有化版本,允许开发者在企业内部搭建私有的 Maven 仓库,用于存储和管理项目依赖项。在 Linux 环境下搭建内网 Maven 私服,可以提高项目的构建和部署效率...
5. 如果需要自定义Maven命令行参数,可以在“Command line options”中添加。 接下来是Tomcat的配置: 1. 在IntelliJ IDEA中,打开“File” -> “Settings” -> “Plugins”,确保已经安装了“Tomcat and TomEE ...
- **7.7 simple-command模块**:构建命令行应用。 **8. 优化和重构POM** - **8.1 优化POM**:优化POM文件,提高构建效率。 - **8.2 重构POM**:根据项目的实际需求重构POM文件,使其更符合项目的构建需求。 通过...
**7.8 simple-command模块** 创建一个命令行应用程序,作为企业级项目的另一组成部分。 **7.9 运行这个命令行程序** 通过Maven命令运行命令行程序,验证其功能。 #### 八、优化和重构POM 这部分内容涉及如何优化和...
**7.8 simple-command模块** 创建一个子模块,负责命令行应用程序的开发。 **7.9 运行命令行程序** 通过`mvn clean install exec:java`命令可以构建并运行命令行程序。 #### 八、优化和重构POM **8.1 优化和重构...
<bean id="destination" class="org.apache.activemq.command.ActiveMQQueue"> ``` 3. **注解方式** Spring 4.0之后引入了基于注解的配置,可以在Java配置类中定义消息监听器。首先创建一个`@...
7. **Maven的命令行工具**:mvn command可以执行各种操作,如`mvn clean`清理构建目标,`mvn install`将项目安装到本地仓库,`mvn package`打包项目等。 通过理解和熟练运用这些知识点,开发者可以高效地管理Java...
一旦安装完成,开发者可以使用mvn command来执行各种构建任务,如`mvn clean install`来清理、编译、测试并安装项目到本地仓库。 此外,Maven还支持多种格式的POM文件,如XML或Groovy,以及使用Maven Archetypes...
powershell -Command "Invoke-WebRequest -Uri '%url%' -OutFile '%filename%'" echo Jar downloaded successfully! ``` 这个脚本使用PowerShell的`Invoke-WebRequest`命令下载文件,并将其保存为指定的文件名。 **...
**7.8 simple-command模块** 定义一个命令行应用子模块。 **7.9 运行这个命令行程序** 使用特定的命令来运行命令行程序。 **7.10 小结** 总结构建多模块企业级项目的过程。 **7.10.1 编写接口项目程序** 编写项目...
最后,构建打包的命令行应用程序(Building a Packaged Command-line Application),将组装目标(Assembly Goal)附加到打包阶段(Package Phase)。 对于Web应用程序,Maven同样可以轻松管理。创建一个简单的Web...
<bean id="queue" class="org.apache.activemq.command.ActiveMQQueue"> <!-- JmsTemplate --> <!-- Message Listener --> <!-- Configure listener container for the queue --> ``` ...
To verify that Maven is installed correctly, open a command prompt and run `mvn --version`. This command should display the version of Maven installed on your system. **2.5 Maven Installation Details...