简介

Maven私服是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件,有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓库,否则,私服请求外部的远程仓库,将构件下载到私服,再提供给本地仓库下载。

下载(version-2.x)

官网下载页:https://www.sonatype.com/download-oss-sonatype



链接:https://pan.baidu.com/s/1z-L29iFBD4y_i1PRMzwryA

提取码:tk3h

安装

  • 解压安装包nexus-2.14.1-02-win.zip,打开命令提示符,进入nexus-2.14.1-02-win.zip/bin目录

  • 安装命令
nexus.bat install

  • 卸载命令
nexus.bat uninstall
  • 打开服务窗口,nexus已安装,右键启动该服务

  • 打开浏览器,访问:http://localhost:8081/nexus/

  • 点击右上角Log In,使用用户名:admin,密码:admin123登录

Nexus修改默认端口

  • 找到Nexus的配置文件nexus.propertiesNexus根目录/conf/nexus.properties

  • 更改为自定义端口

修改管理员账号密码

  • 使用管理员账号登录后点击上方profile,进入到个人信息页面即可修改密码



Nexus仓库类型介绍

登陆Nexus,在左边菜单栏里选择Repositoriesrepository的类型有一下几种:

  • hosted,本地仓库,通常我们会部署自己的构件到这一类型的仓库。比如公司的第三方库
  • proxy,代理仓库,它们被用来代理远程的公共仓库,如maven中央仓库
  • group,仓库组,用来合并多个hosted/proxy仓库,当你的项目希望在多个repository使用资源时就不需要多次引用了,只需要引用一个group即可

Nexus预置了3个本地仓库,分别是ReleasesSnapshots3rd Party

  • Releases:存放自己项目中发布的构建, 通常是Release版本的
  • Snapshots:存放非release版本, 非稳定版本
  • 3rd Party: 存放第三方库

Nexus建库

  • Add-->HostedRepository

  • 我们这里建一个非正式库,按图填写信息,注意框的地方,填写完成后save

  • 然后选择PublicRepositories,打开configuration选项卡,将自己创建的仓库添加到group,如图从右侧移到左侧,点击save保存,至此,已经成功搭建好自定义的仓库了

Nexus创建账号

  • 按图创建账号

jar包上传下载配置

  • 远程仓库认证,在settings.xml中配置<servers>节点
<servers>
<server>
<id>tbsnexus</id>
<username>tb-user</username>
<password>P@ssw0rd</password>
</server>
</servers>

上述代码中配置了一个idtbsnexus的远程仓库认证信息,Maven使用settings.xml文件中的servers元素及其子元素server配置仓库认证信息,认证用户名为tb-user,认证密码为P@ssw0rd,这里的关键是id元素,id没有要求,随便定义,但是后面配置远程仓库的id必须和这里的id保持一致,正是这个id将认证信息与仓库配置联系在了一起

  • 配置远程仓库
<profiles>
<profile>
<id>tbsnexus</id>
<repositories>
<repository>
<id>tb-repositories</id>
<name>Repository for tb-repositories</name>
<url>http://39.100.65.160:8081/nexus/content/repositories/tb-repository/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>tbsnexus</activeProfile>
</activeProfiles>
  • 配置仓库镜像
<mirror>
<id>tb-repositories</id>
<mirrorOf>*</mirrorOf>
<url>http://39.100.65.160:8081/nexus/content/repositories/tb-repository/</url>
</mirror>
<!--配置阿里云Maven镜像-->
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
<!--配置华为云Maven镜像-->
<mirror>
<id>huaweicloud</id>
<mirrorOf>*</mirrorOf>
<url>https://mirrors.huaweicloud.com/repository/maven/</url>
</mirror>

默认的,如果本地仓库找不到依赖的构件,这时需要东西时先到Nexus上找,如果发现Nexus服务关闭后,会自动到中央仓库找,至此,已经可以私服下载jar包了

上传jar

  • 定位到要上传的jar包的目录
  • 执行命令
mvn deploy:deploy-file -DgroupId=com.tbtech -DartifactId=tb-tools -Dversion=1.0-SNAPSHOT -Dpackaging=jar -Dfile=tb-tools-1.0-SNAPSHOT.jar -Durl=http://39.100.65.160:8081/nexus/content/repositories/tb-repository -DrepositoryId=tbsnexus
  • deploy:deploy-file表示发布独立的文件
  • groupIdartifactIdversion可根据需要设定
  • urlNexus服务器中需要上传的仓库路径
  • repositoryIdserverid必须一致
  • 上传结果





    上传成功后,我们只需在pom.xml中引入<dependency>就可以下载该jar包了
<dependency>
<groupId>com.tbtech</groupId>
<artifactId>tb-tools</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>

参考博客

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

~~ 感谢大佬

.end

Windows使用Nexus搭建Maven私服的更多相关文章

  1. Windows 下Nexus搭建Maven私服

    nexus下载地址: http://www.sonatype.org/nexus/archived/#step2top 1. 为什么使用Nexus 如果没有私服,我们所需的所有构件都需要通过maven ...

  2. 【原】Windows下Nexus搭建Maven私服

    一.Maven安装 详见Java开发环境搭建 二.Nexus安装 2.1.下载 地址:http://www.sonatype.org/nexus/go/ 选择OSS(ZIP)版本 2.2.安装 将安装 ...

  3. Maven——使用Nexus搭建Maven私服

    原文:http://www.cnblogs.com/xdp-gacl/p/4068967.html Maven学习总结(九)--使用Nexus搭建Maven私服 一.搭建nexus私服的目的 为什么要 ...

  4. (转)Maven学习总结(九)——使用Nexus搭建Maven私服

    孤傲苍狼只为成功找方法,不为失败找借口! Maven学习总结(九)——使用Nexus搭建Maven私服 一.搭建nexus私服的目的 为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目 ...

  5. 使用Nexus搭建Maven私服问题总结

    #业务场景 最近项目要交付给客户了,之前项目开发和测试一直都是使用公司内部的一套环境,项目交付后客户购置了大量服务器,也要将整套测试环境迁移至客户的服务器上,后续的需求变更以及新需求的开发都会在客户服 ...

  6. nexus 搭建 maven 私服

    nexus 搭建 maven 私服 本机环境 Win 8 JDK 7 Maven 3.2 Nexus 2.11 版本选择 http://www.sonatype.org/nexus/archivedn ...

  7. Maven 使用Nexus搭建Maven私服

    Maven学习 (四) 使用Nexus搭建Maven私服 为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找 ...

  8. 如何使用Nexus搭建Maven私服

    如何使用Nexus搭建Maven私服 听语音 | 浏览:47 | 更新:2016-09-29 10:22 1 2 3 4 5 6 7 分步阅读 一键约师傅 百度师傅最快的到家服务,最优质的电脑清灰! ...

  9. Maven-004-使用 Nexus 搭建 maven 私服

    从去年至今,自己一直在学习自动化测试工具,想利用自动化工具尽可能的将重复的.关键的.耗时耗力的工作实现自动化,减轻日常测试工作,提升测试效率.在学习的过程中,将 maven 作为了项目开发管理工具,进 ...

随机推荐

  1. WEB安全 - XSS,CSRF

    1. CSRF参考 https://www.ibm.com/developerworks/cn/web/1102_niugang_csrf/ https://en.wikipedia.org/wiki ...

  2. pandas 存储文件到MySQL 以及读取

    pandas导入数据到MySQL 1.导入必要的库 2.创建链接 3.导入数据 import pandas as pd from sqlalchemy import create_engine con ...

  3. 信息论相关概念:熵 交叉熵 KL散度 JS散度

    目录 机器学习基础--信息论相关概念总结以及理解 1. 信息量(熵) 2. KL散度 3. 交叉熵 4. JS散度 机器学习基础--信息论相关概念总结以及理解 摘要: 熵(entropy).KL 散度 ...

  4. 明明的随机数(0)<P2006_1>

    明明的随机数 (random.pas/c/cpp) [问题描述] 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤100),对于其中 ...

  5. masonry使用添加紧凑、抗压属性

    // 内容紧凑 - 优先完全显示内容,且不多占像素. [self.leftLabel setContentHuggingPriority:UILayoutPriorityDefaultHigh for ...

  6. 解决Hibernate配置文件不在SRC文件夹下获取Session方法

  7. 借助工具解决DNS污染

    我第一次接触到DNS污染,是在GitHub上面进行学习的时候,发现头像加载出问题,加载失败,而且文档里面的图片也无法显示...... 百度了很多内容,差不多都试了一下,最终选择了使用DNS工具去解决 ...

  8. python学习 第一章(说不定会有第零章呢)one day

    ------------恢复内容开始------------ 一.啥是python python是吉尔·范罗苏姆于1989年开发的一个新的脚本解释程序,是ABC语言的一种继承. 二.python的特点 ...

  9. J.K.罗琳女士---《失败的好处和想象的重要性》

    目录 sohu ruanyifeng web sohu http://www.sohu.com/a/166181502_467718 <哈利波特>的作者J.K.罗琳女士在出席一次哈佛大学的 ...

  10. 时间和日期-<Date和SimpleDateFormat>

    第一步.定义一个Date //获取当前时间 Date now=new Date(); 第二步.定义一个SimpleDateFormat //规范时间格式 SimpleDateFormat date=n ...