提前感谢云南昭通师专孔浩老师
综述:maven是一种项目管理工具,很大的亮点就是jar包控制,通过GAV来实现jar的导入.
一 maven命令
1.clean:清除target文件夹
2.compile:编译
3.test:执行测试类
4.package:打包
5.install:加入中央仓库,自己的其他项目可以访问这个项目
6.deploy:加入私有服务器上,其他人的项目可以访问这个项目
7.archetype:generate生产骨架
注:Maven 最常用的命令:mvn clean compile、mvn clean test、mvn clean package、mvn clean install。执行test 之前是会先执行compile 的,执行package 之前是会先执行test 的,而类似地,install 之前会执行package
二 maven中Scope值
1.test:只在测试中引用
2.provided测试盒编译都引用但是生成war时不引用,如servlet-api,因为servlet-api在tomcat等web服务器中已经存在,如果再打包会出现冲突
3.compile测试盒编译打包都引用,Scope默认
4.runtime:在运行时依赖,在编译时不依赖
三 maven中的依赖控制
1.先写谁就依赖谁的jar
2.路径最短 可以在自己的pom写依赖来指定.
3.路径排除<exclusions>
四 maven版本管理
总版本号.分支版本号.小版本号-里程碑版本
总版本号的变动一般表示框架的变动
分支版本号:一般表示增加了一些功能
小版本号:在分支版本上面进行的bug的修复
里程碑:SNAPSHOT-->alpha-->beta-->release-->GA
五 私有服务器
1.下载并且解压缩
2.将bin添加到环境变量
3.nexus install将nexus安装到windows的服务中
4.修改$nexus$/bin/jsw/conf/wrapper.c onf中的wrapper.java.command为你java命令的安装路径
5.nexus start
6.输入localhost:8081
六 仓库介绍
1.host:内部项目的发布仓库
3rd party 第三方依赖的仓库,这个数据通常是由内部人员自行下载之后发布上去
releases 内部模块中release模块的发布仓库
2.proxy仓库:从远处中央仓库中寻找数据的仓库
3.更新私有仓库的索引
将nexus中download Remote Indexes 改为true
或者直接下载索引,将其拷贝到中央仓库的索引存储文件夹中sonatype-work/nexus/indexer/central-ctx
七 镜像
八 发布
1.设置release和snapshot