本文共 2693 字,大约阅读时间需要 8 分钟。
1.认识Maven
2.优势 a)约定优于配置b)简单
c)测试支持 d)构建简单 e)CI f) 插件丰富 3.下载 a) b)安装 c)maven-model-builder-3.3.9.jar/org/apache/maven/modeld)配置 MVM_HOME
i.Windows path ii.Linux .bash_profile iii.MAVEN_OPTS iv.配置setting.xmlalimaven aliyun maven http://maven.aliyun.com/nexus/content/groups/public/ central ui central Human Readable Name for this Mirror. http://uk.maven.org/maven2/ osc central http://maven.oschina.net/content/groups/public/ osc_thirdparty thirdparty http://maven.oschina.net/content/repositories/thirdparty/
4.新建一个Maven项目
!具体结构~~ a)项目结构b)pom.xml
i.groupId com.gupaoedu ii.artfactId 功能命名 iii.version 版本号 iv.packaging 打包方式 默认是jar v.dependencyManagement 1.只能出现在父pom 2.统一版本号 3.声明 (子POM里用到再引)vi.Dependency
1.Type 默认jar 2.scope a)compile 编译 例如spring-core b)test 测试 c)provided编译 例如 servlet d)runtime运行时 例如JDBC驱动实现 e)system 本地一些jar 例如短信jar f)依赖传递第一列表示直接依赖的scope,第一行表示间接依赖的scope
g)依赖仲裁
i.最短路径原则 ii.加载先后原则 h)exclusions i.排除包vii.生命周期 lifecycle/phase/goal
1.A Build Lifecycle is Made Up of Phases 2.A Build Phase is Made Up of Plugin Goals5.版本管理
a)1.0-SNAPSHOT i.repository 删除 ii.mvn clean package -U (强制拉一次) b)主版本号.次版本号.增量版本号-<里程碑版本> 1.0.0-RELAESE6.常用命令
a)compile b)clean 删除target/ c)test test case junit/testNG d)package 打包 e)install 把项目install到local repo f) deploy 发本地jar发布到remote7.插件
a)常用插件 i. ii. iii.findbugs 静态代码检查 iv.versions 统一升级版本号 1.mvn versions:set -DnewVersion=1.1 v.source 打包源代码 vi.assembly 打包zip、war vii.tomcat7 8.自定义插件 a)maven-plugin b)extends AbstractMojo c) d)mvn install e)参数传递 9.Profile a)使用场景 dev/test/pro b)setting.xml 家和公司两套 10.仓库 a)下载 b)安装 解压 c)使用http://books.sonatype.com/nexus-book/reference3/index.html i. ii.admin/admin123 d)发布 i.pom.xml 配置 1. 2. e)下载jar配置 i.配置mirror ii.Profile 11.archetype 模版化 a)生成一个archetype i.mvn archetype:create-from-project /target/generated-sources/archetype iii.mvn install b)从archetype创建项目 mvn archetype:generate -DarchetypeCatalog=localbuild index 重建索引
转载地址:http://pwqen.baihongyu.com/