maven私有库的安装、配置和使用

一、maven介绍

maven是一个项目管理工具,通过一个pom.xml文件来定义项目的依赖,私有库的地址,maven插件,main方法,其依赖的lib库文件(有些项目可能没有)等。一个项目只有一个pom.xml文件。对于pom.xml文件进行maven的相关操作,包括clean、install等。

maven最强大的功能就是可以自动下载项目依赖库。即maven可以安装一个本地库,通常位于用户目录的.m2目录下,如/root/.m2/下。对于maven项目,可以把编译完的可执行jar包通过install传到本地库中。其他项目在编译时,可以在其项目的pom.xml中按照写明的依赖关系,从本地库中通过拷贝来引用这些依赖。若本地库中没有某个依赖,则maven还会去私有库中下载依赖包到本地库,然后供项目进行引用。

maven的常见命令:clean是指清理,即清理编译后生成的target目录;install是指安装,即打成jar包并把该jar包传到maven的本地仓库,供其他项目引用。

PS:java项目所构建jar时,是有依赖关系的,如一般的,test-common-parent需要被最先编译,test-common紧接着被编译,test-common-config然后被编译,其依赖于test-common;这些是java项目的一个特点。

二、maven私有库的安装、配置和使用

1、maven本地库、私有库、中央库的关系介绍


本地库:在本地的一个项目库,在实际项目中,开发人员的windows电脑上一般会安装此本地库(在本地库的配置文件中,会写明私有库的地址),并在eclipse中配置本地库,用于开发时自己进行测试;本地库中的jar包通过maven的deploy命令上传到私有库;

私有库:maven私有库,即nexus私服,是在服务器端部署的一个服务,有web管理界面;

中央库:即远程proxy仓库,开发人员

如果构建的项目,本地仓库中没有对应的依赖包,就会去nexus私服去下载。如果nexus也没有此依赖包,就会去远程中央仓库下载,这些中央仓库就是proxy。nexus私服下载成功后再下载至本地maven库中供项目

2、maven私有库的安装及配置

(1)安装见文档

(2)私有仓库的配置

group:即组,在本地库的settings.xml文件中写明此链接,则可以引用到私有库的所有仓库;

hosted:宿主库,即内部项目所引用的依赖;分为三种类型,即release、snapshots、3rd party,其中前两者是根据项目的pom.xml中写明的对应关系,上传到对应的库中,后一个为第三方依赖的仓库;

proxy:即中央库,需要设置一下才能从远程仓库进行下载,即在configuration中配置download  remote indexes为true

3、maven本地库的安装及配置

(1)安装

解压包 apache-maven-3.0.5-bin.tar.gz即可

(2)配置

配置环境变量

##maven env
export MAVEN_HOME=/usr/local/maven-3.0.5
export PATH=$PATH:$MAVEN_HOME/bin

配置conf/下的settings.xml

##主要配置私有库地址,私有库登录用户(用于从私有库下载依赖包到本地库),插件库地址等;

PS:看了一下生产环境的配置文件settings.xml,发现为默认的,没有做任何修改,问了一下其他人,说是开发在项目的pom文件(一般为公共配置项目的的pom文件)中即写明了maven私有库的地址,所以在这里只是安装一下maven,有maven这个命令即可了;另外,由于是公司内部的完整项目,不牵涉到很大的项目整合,因此现在配置的编译脚本只有clean和install,即只从私服上下载依赖的jar包,而不会把本地的jar包上传到私有库。

4、maven项目发布到私有库

需要修改项目的pom.xml文件,写明私有库的地址,然后在本地库中进行maven clean install deploy

PS:在编译进行install时,jenkisn会显示日志显示安装到了那个本地库。





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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值