一、简介

Nexus是一个应用广泛的Maven仓库管理软件。

二、安装

Nexus是典型的Java Web应用。它有两种部署方式:一种是部署bundle包,内置jetty服务器;一种是部署war包到java web 服务器(比如tomcat等),通过tomcat对外提供服务。

1、bundle方式安装

下载bundle包:http://download.sonatype.com/nexus/oss/nexus-2.6.0-05-bundle.zip,然后解压到某一目录(如/usr/local/)下面,解压之后包括两个文件夹:

(1)nexus-2.6.0-05:该目录包含了运行需要的文件:lib包、jetty服务器的配置、服务器启动\停止脚本等等。

(2)sonatype-work:该目录包含了服务生成的配置文件、仓库文件和日志文件等。

目录 /usr/local/nexus-2.6.0-05/bin下面包含了控制服务器的脚本,用法如下:

./nexus console:启动服务,所有的输出打印到控制台,可以通过Ctrl-C停止服务。

./nexus start:在后台以daemon方式启动服务

./nexus stop:停止后台启动的服务

./nexus status:显示后台服务的状态

./nexus restart:重启后台服务

Nexus服务默认监听8081端口,可以通过/usr/local/nexus-2.6.0-05/conf/nexus.properties中配置项目application-port进行修改。

2、war包方式安装

以war包方式其实就是一个普通的jave web部署。

三、仓库

仓库是nexus中最重要的概念之一。nexus中的仓库包括四种类型:宿主仓库(hosted)、代理仓库(proxy)、虚拟仓库(virtual)和仓库组(group)。仓库具有一定个格式(format):maven2/maven1。仓库具有一定的策略(policy):release和snapshot。

Nexus服务器初始时下列仓库:

(1)Releases仓库:这是一个宿主(hosted)仓库。该仓库一般用来保存我们自己的项目的发布版。

(2)Snapshots仓库:这是一个宿主(hosted)仓库。该仓库一般用来保存我们自己的项目的快照版本。

(3)3rd Party仓库:这是一个宿主(hosted)仓库。该仓库一般用来保存第三方的包。

(4)Apache Snapshots:这是一个代理(proxy)仓库。该仓库保存从apache快照库下载的包(http://repository.apache.org/snapshots/)。

(5)Codehaus Snapshots:这是一个代理(proxy)仓库。该仓库保存从codehaus快照库下载的包(http://nexus.codehaus.org/snapshots/)。

(6)Central:这是一个代理(proxy)仓库。该仓库保存从中央仓库下载的包(http://repo1.maven.org/maven2/)。

(7)Central M1 shadow:这是一个虚拟(virtual)仓库。该仓库以M1格式代理中央仓库。

(8)Public Repositories:这是一个组(group)仓库。该仓库可以代理以上仓库,通过统一的接口供外下载。

四、配置Maven项目从本地私服下载构件

1、项目文件配置方式

在project下面增加repositories和pluginRepositories

[html] view plaincopyprint?
  1. <repositories>
  2. <repository>
  3. <id>nexus</id>
  4. <name>Nexus</name>
  5. <url>http://10.241.227.69:8081/nexus/content/groups/public/</url>
  6. <releases><enabled>true</enabled></releases>
  7. <snapshots><enabled>true</enabled></snapshots>
  8. </repository>
  9. </repositories>
  10. <pluginRepositories>
  11. <pluginRepository>
  12. <id>nexus</id>
  13. <name>Nexus</name>
  14. <url>http://10.241.227.69:8081/nexus/content/groups/public/</url>
  15. <releases><enabled>true</enabled></releases>
  16. <snapshots><enabled>true</enabled></snapshots>
  17. </pluginRepository>
  18. </pluginRepositories>

2、setting.xml配置方式

在profiles下面增加一个profile

[html] view plaincopyprint?
  1. <profile>
  2. <id>nexus</id>
  3. <repositories>
  4. <repository>
  5. <id>nexus</id>
  6. <name>Nexus</name>
  7. <url>http://10.241.227.69:8081/nexus/content/groups/public/</url>
  8. <releases><enabled>true</enabled></releases>
  9. <snapshots><enabled>true</enabled></snapshots>
  10. </repository>
  11. </repositories>
  12. <pluginRepositories>
  13. <pluginRepository>
  14. <id>nexus</id>
  15. <name>Nexus</name>
  16. <url>http://10.241.227.69:8081/nexus/content/groups/public/</url>
  17. <releases><enabled>true</enabled></releases>
  18. <snapshots><enabled>true</enabled></snapshots>
  19. </pluginRepository>
  20. </pluginRepositories>
  21. </profile>

在activeProfiles下面增加一个activeProfile

[html] view plaincopyprint?
  1. <activeProfiles>
  2. <activeProfile>nexus</activeProfile>
  3. </activeProfiles>

五、部署构件至本地私服

在project下面配置distributionManagement

[html] view plaincopyprint?
  1. <distributionManagement>
  2. <repository>
  3. <id>nexus-releases</id>
  4. <name>Nexus Releases Repository</name>
  5. <url>http://10.241.227.69:8081/nexus/content/repositories/releases/</url>
  6. </repository>
  7. <snapshotRepository>
  8. <id>nexus-releases</id>
  9. <name>Nexus Releases Repository</name>
  10. <url>http://10.241.227.69:8081/nexus/content/repositories/snapshots/</url>
  11. </snapshotRepository>
  12. </distributionManagement>

这里配置了两个repository用来存储本地编译的构件。

匿名用户只有读权限没有部署权限。部署之前在setting.xml中配置认证信息。在servers下面增加配置admin/admin123是nexus服务的默认账号密码。

[html] view plaincopyprint?
  1. <server>
  2. <id>nexus-releases</id>
  3. <username>admin</username>
  4. <password>admin123</password>
  5. </server>
  6. <server>
  7. <id>nexus-snapshots</id>
  8. <username>admin</username>
  9. <password>admin123</password>
  10. </server>

利用Nexus搭建私服相关推荐

  1. centos利用nexus搭建局域网docker私有仓库

    centos利用nexus搭建局域网docker私有仓库 1.官网下载nexus oss版本 https://sonatype-download.global.ssl.fastly.net/repos ...

  2. Nexus搭建私服(记录)

    搭建私服环境  下载 nexus   Nexus 是 Maven 仓库管理器,通过 nexus 可以搭建 maven 仓库,同时 nexus 还提供强 大的仓库管理功能,构件搜索功能等.   下载 N ...

  3. 利用nexus搭建maven库并利用AS上传aar

    2019独角兽企业重金招聘Python工程师标准>>> 1. 进入Sonatype官网下载nexus 2. 安装完成 3. 在服务上创建新用户和库com.xxx.yyy 4. 在an ...

  4. maven 使用 Nexus 搭建私服并发布distributionManagement的配置使用

    可用两种方式安装启动nexus,下载在命令行启动,或者放到tomcat 下载并在命令行启动nexus 1.下载nexus(https://www.sonatype.com) 2.下载后解压文件,将解压 ...

  5. Linux使用nexus搭建maven私服

    Linux使用nexus搭建私服 Maven私服Nexus3.x环境构建操作记录 Maven介绍 Apache Maven是一个创新的软件项目管理和综合工具. Maven提供了一个基于项目对象模型(P ...

  6. 使用Nexus搭建Maven仓库私服的权限配置心得

    最近在学习Maven,学习到使用Nexus搭建私服,通过Nexus的权限机制可以实现较细粒度的权限控制,这对组织内部的团队开发很有帮助.通过实验,我总结了以下一些经验,可以实现一些权限控制的需求,在此 ...

  7. Linux下使用Nexus搭建Maven私服

    Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问.利用Nexus你可以只在一个地方就能够完全控制访问和部署在你所维护仓库中的每个Artifact.Nexus ...

  8. Maven入门:使用Nexus搭建Maven私服及上传下载jar包

    一. 私服搭建及配置 1 . 私服简介 私服是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件.有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓 ...

  9. 使用 Nexus 搭建 Maven 私服 详细教程

    使用 Nexus 搭建一个maven的私服,用来存一下公司的内部jar包,先来看看 Nexus的介绍吧: Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问. ...

最新文章

  1. Nginx处理请求的11个阶段
  2. linux 下的图片处理软件下载,美图秀秀Linux版
  3. shardingjdbc全局表_Sharding-JDBC动态分表实现
  4. oppo如何更新计算机,OPPO R17Pro手机怎么升级和降级系统?
  5. 对话李飞飞,揭秘国际体育赛事风“云”背后的黑科技
  6. Socket之UDP服务器【Python】
  7. 12、oracle数据库下的存储过程和函数
  8. spring+hibernate--直接修改数据库,再通过hibernate查询数据不变
  9. vs2010旗舰版密钥
  10. Asus ROG Zephyrus G14 / 幻14 Ubuntu 外接HDMI显示屏检测不到,AMD核显驱动配置,AMD+Nvidia双显卡配置
  11. 计算机快捷键屏幕保护是什么原因,电脑屏幕保护_电脑屏幕保护快捷键
  12. 要注意工作中邮件的正式性
  13. C#语法糖(Csharp Syntactic sugar)
  14. 雷神笔记本关闭触摸板
  15. 如何解决@RequestParam无法接收vue+axios传递json数据
  16. JAVA练习:利用JAVA基本语句实现打印日历
  17. cif和cip的区别_CIF与CIP价的区别?CIP价怎么算的?...
  18. 4G物联网模组连接网络大致流程
  19. 【论文笔记】A Meta-Reinforcement Learning Algorithm for Causal Discovery
  20. Linux学习笔记2(root密码忘记重置,Linux系统更新yum源,YUM安装卸载,常见故障排除,vim,用户/组)

热门文章

  1. OpenStack 企业私有云的若干需求(7):电信行业解决方案 NFV
  2. python计算机视觉编程——基本的图像操作和处理
  3. 下载没有种子链接用特征码下片的方法
  4. 几个Android云测试
  5. 武汉php东和,武汉--从轨道交通线网规划看黄陂、东西湖和江夏等新兴区域发展潜力...
  6. P处理的中有大量判断条件是的sql写法
  7. 微信支付:小微商户申请入驻第三步:平台证书序列号解密和敏感词加密
  8. ion-slides 图片只能滑动一半、图片索引错误导致图片显示错误(缓存问题导致的)
  9. 深度学习系统框架的演进趋势
  10. 【C语言】三子棋(智能下棋 + 阻拦玩家)