1. 创建项目
1) 创建父目录
mvn archetype:generate -DgroupId=com.qunar.training -DartifactId=training -Dversion=1.0.0 -DinteractiveMode=false -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=5-SNAPSHOT
archetype:generate : 使用 archetype 新建项目
-DgroupId : 指定groupId
-DartifactId: 指定artifactId
-Dversion: 指定version
-DinteractiveMode : 互动模式, true 会询问用户参数值(例如groupId, version), false 则使用指定参数
可选的参数
-DarchetypeGroupId=org.codehaus.mojo.archetypes \
-DarchetypeArtifactId=pom-root : 指定为父 pom, 不会创建 src 文件夹等
2) 创建子项目
进入父目录后
mvn archetype:generate \
-DgroupId=com.maventest \
-DartifactId=mvntest-sub \
-Dversion=1.0.0 \
-DinteractiveMode=false \
2. 打包项目
mvn -U clean package -Pdev -Dmaven.test.skip=true enforcer:enforce -DcheckDeployRelease_skip=true
-U: 强制更新snapshot
clean: 清理原来的target
package: 打包项目
-Pdev: 使用dev profile
-Dmaven.test.skip: 跳过测试用例测试
enforcer:enforce: 检查和重复类
-DcheckDeployRelease_skip: 不明白
3. 重复类问题的解决
参见 http://www.cnblogs.com/zemliu/p/3277241.html
4. jar 包部署
mvn install : 部署到 local repository
mvn deploy : 部署到 remote repository