博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Maven私服 Nexus的搭建
阅读量:6876 次
发布时间:2019-06-26

本文共 1926 字,大约阅读时间需要 6 分钟。

  hot3.png

背景:

私服:私有服务器,是公司内部Maven项目经常用到的私有仓库。Nexus就是一款常用的私用Maven服务器,一般是公司内部使用。

下载地址是:    默认本地地址:

默认登录账号:admin/admin123  登录后为安全起见,可自行修改帐号。目前选择版本:nexus-2.8.0-05。

作用:

Nexus常用功能:指定私服的中央地址、将自己的Maven项目指定到私服地址、从私服下载中央库的项目索引、从私服仓库下载依赖组件、将第三方项目jar上传到私服供其他项目组使用。

本地开启Nexus服务后访问url地址http://localhost:8081/nexus/,登录后就可以访问Nexus了。

一般用户访问最为频繁的就是左侧菜单栏的Repositories菜单了。

181918_ce9y_1789770.png

一般用到的仓库种类是hosted、proxy。

hosted代表宿主仓库,用来发布一些第三方不允许的组件,比如oracle驱动、比如商业软件jar包等。

proxy代表代理远程的仓库,最典型的就是Maven官方中央仓库、JBoss仓库等等。

如果构建的Maven项目本地仓库没有依赖包,那么就会去这个代理站点去下载,那么如果代理站点也没有此依赖包,就会去远程仓库下载依赖,这些远程仓库就是proxy。

仓库类型:

hosted    内部项目的发布仓库

releases    内部的模块中release模块的发布仓库
snapshots    内部的模块中snapshots模块的发布仓库
3rd party    第三方依赖的仓库,这个数据通常是由内部人员自行下载之后发布上去
proxy    从远程中央仓库中寻找数据的仓库
group    组仓库,用来方便我们开发人员进行设置的仓库

maven项目索引:

下载Maven项目索引,项目索引是为了使用者能够在私服站点查找依赖使用的功能

183543_Udd9_1789770.png

保存后,后台会有一个下载任务,下载完成后,Maven索引就可以使用了,例如在搜索框中输入spring-core

184357_ylZG_1789770.png

可以检索出它的相关信息,包括怎么配置依赖信息。我们要想使用这个私服仓库,先在项目pom中配置相关私服信息,如下指定私服仓库

<repositories>  

        <repository>  
            <id>nexus</id>  
            <name>nexus</name>  
            <url>http://192.168.1.211:8081/nexus/content/groups/public/</url>  
            <releases>  
                <enabled>true</enabled>  
            </releases>  
            <snapshots>  
                <enabled>true</enabled>  
            </snapshots>  
        </repository>  
    </repositories>

指定插件仓库

<pluginRepositories>  

        <pluginRepository>  
            <id>nexus</id>  
            <name>nexus</name>  
            <url>http://192.168.1.211:8081/nexus/content/groups/public/</url>  
            <releases>  
                <enabled>true</enabled>  
            </releases>  
            <snapshots>  
                <enabled>true</enabled>  
            </snapshots>  
        </pluginRepository>

</pluginRepositories>

pom文件配置完成后,当Maven项目构建的时候就会从私服上下载相关依赖。当然这个配置仅仅是在此项目中生效,对于其他项目还是不起作用。如果相对Maven的其他项目也生效的话。需要修改全局的settings.xml文件。

修改settings.xml为:

005001_2fgm_1789770.png

激活profile:

185721_tzgU_1789770.png

之后所有本机的Maven项目就在私服下载组件。

项目发布到私服,要settings.xml中配置发布权限

192345_gH3b_1789770.png

005112_LFaz_1789770.png

然后在控制台运行 mvn clean deploy  命令,进行项目发布

在控制台发布成功

然后进入到私服上的仓库中,看一下确实存在刚刚发布的项目。

宿主库——3rd party

假如我们下载了mysql的驱动程序jar包想给其他项目组使用,就需要上传该jar包。选中宿主库——3rd party,填写好相应的GAV之后,最后在最下面,选择Artifact Upload上传至宿主空间

022451_nVXG_1789770.png

显示上传成功

022247_XsMp_1789770.png

随后在Browser Index选项卡中,点击刷新后,继可看到刚刚上传的mysql构件

023014_eSkN_1789770.png

至此,Nexus搭建的整个过程就算完成了。

转载于:https://my.oschina.net/huoyun/blog/745319

你可能感兴趣的文章
php-fpm进程数优化
查看>>
iOS中如何对具有复杂依赖的SDK在真机上进行单元测试
查看>>
Mobile Web中URL设计问题
查看>>
core Animation之CAAnimationGroup(动画群组)
查看>>
重构实践:体验interface的威力(一)
查看>>
UILabel混合显示动画效果
查看>>
Java内存泄露
查看>>
窥探Swift编程之强大的Switch
查看>>
R语言学习路线图-转帖
查看>>
【导入导出】sqlldr 导入含有内嵌换行符的数据
查看>>
Linux中常用命令
查看>>
RDS最佳实践(四)—如何处理Mysql的子查询
查看>>
最大流:Dinic模板
查看>>
安卓开发中个人能力的进阶进程
查看>>
人工智能10年将有颠覆性改变
查看>>
探秘AOP实现原理
查看>>
单点登录(SSO)简介
查看>>
2018最新大数据学习路线分享
查看>>
利用SVG制作不规矩背景的链接导航
查看>>
Linux - 一次运行多个命令
查看>>