Windows使用Nexus搭建Maven私服
简介
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.properties
,Nexus根目录/conf/nexus.properties
- 更改为自定义端口
修改管理员账号密码
- 使用管理员账号登录后点击上方
profile
,进入到个人信息页面即可修改密码
Nexus仓库类型介绍
登陆Nexus
,在左边菜单栏里选择Repositories
,repository
的类型有一下几种:
hosted
,本地仓库,通常我们会部署自己的构件到这一类型的仓库。比如公司的第三方库proxy
,代理仓库,它们被用来代理远程的公共仓库,如maven中央仓库group
,仓库组,用来合并多个hosted/proxy
仓库,当你的项目希望在多个repository
使用资源时就不需要多次引用了,只需要引用一个group
即可
Nexus
预置了3个本地仓库,分别是Releases
,Snapshots
,3rd 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>
上述代码中配置了一个id
为tbsnexus
的远程仓库认证信息,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
表示发布独立的文件groupId
,artifactId
,version
可根据需要设定url
为Nexus
服务器中需要上传的仓库路径repositoryId
与server
的id
必须一致- 上传结果
上传成功后,我们只需在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私服的更多相关文章
- Windows 下Nexus搭建Maven私服
nexus下载地址: http://www.sonatype.org/nexus/archived/#step2top 1. 为什么使用Nexus 如果没有私服,我们所需的所有构件都需要通过maven ...
- 【原】Windows下Nexus搭建Maven私服
一.Maven安装 详见Java开发环境搭建 二.Nexus安装 2.1.下载 地址:http://www.sonatype.org/nexus/go/ 选择OSS(ZIP)版本 2.2.安装 将安装 ...
- Maven——使用Nexus搭建Maven私服
原文:http://www.cnblogs.com/xdp-gacl/p/4068967.html Maven学习总结(九)--使用Nexus搭建Maven私服 一.搭建nexus私服的目的 为什么要 ...
- (转)Maven学习总结(九)——使用Nexus搭建Maven私服
孤傲苍狼只为成功找方法,不为失败找借口! Maven学习总结(九)——使用Nexus搭建Maven私服 一.搭建nexus私服的目的 为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目 ...
- 使用Nexus搭建Maven私服问题总结
#业务场景 最近项目要交付给客户了,之前项目开发和测试一直都是使用公司内部的一套环境,项目交付后客户购置了大量服务器,也要将整套测试环境迁移至客户的服务器上,后续的需求变更以及新需求的开发都会在客户服 ...
- nexus 搭建 maven 私服
nexus 搭建 maven 私服 本机环境 Win 8 JDK 7 Maven 3.2 Nexus 2.11 版本选择 http://www.sonatype.org/nexus/archivedn ...
- Maven 使用Nexus搭建Maven私服
Maven学习 (四) 使用Nexus搭建Maven私服 为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找 ...
- 如何使用Nexus搭建Maven私服
如何使用Nexus搭建Maven私服 听语音 | 浏览:47 | 更新:2016-09-29 10:22 1 2 3 4 5 6 7 分步阅读 一键约师傅 百度师傅最快的到家服务,最优质的电脑清灰! ...
- Maven-004-使用 Nexus 搭建 maven 私服
从去年至今,自己一直在学习自动化测试工具,想利用自动化工具尽可能的将重复的.关键的.耗时耗力的工作实现自动化,减轻日常测试工作,提升测试效率.在学习的过程中,将 maven 作为了项目开发管理工具,进 ...
随机推荐
- 2.2 logistic回归
logistic回归,是一个学习算法,用在监督学习问题中, 输出标签y是0或者1的时候,这是一个二元分类问题, 给定一个输入x,一张图,你希望识别出这是不是猫图, 需要一个算法,可以给出一个预测值,我 ...
- GO测试
测试 Go拥有一个轻量级的测试框架,它由 go test 命令和 testing 包构成. 你可以通过创建一个名字以 _test.go 结尾的,包含名为 TestXXX 且签名为 func (t *t ...
- Zenefits CodeSprint:Knight or Knave
题意是一堆人,从1到n编号,每个人i说一句话,x.x是正数表示i说x君是个好人,x是负数表示i说x君是坏人.问这个群体中最多能有多少好人,把这种情况用字典序的方式输出(好人用A表示,坏人用B表示),希 ...
- 「SP11470」TTM - To the moon
题目描述 给定一段长度为 \(N\) 的序列 \(a\) 以及 \(M\) 次操作,操作有以下几种: C l r d :将区间 \([l,r]\) 中的数都加上 \(d\) Q l r :查询当前时间 ...
- 谷歌下,因为给外层大容器设置 overflow:visible; 而导致问题,IE、火狐正常
#selector { height: auto !important; width: 1024px!important; margin: auto; overflow:visible !import ...
- MYSQL--“Row size too large (> 8126)”
将表的引擎改为MyISAM就可以,如下图. 因为新数据库mysql默认的引擎是InnoDB
- Spring之IOC、AOP和事务
IOC 什么是IOC?如果你回答:Spring是个IOC容器,实现原理是反射,没了.这样证明你没有真正理解IOC. IOC的意思是控制反转,还有个外号叫依赖注入(DI).为什么起这么晦涩难懂的名字呢? ...
- Vue 路由组件
目录 组件数据局部化处理 路由逻辑跳转 组件传参 父传子 子传父 组件的生命周期钩子 路由传参 全家配置自定义 CSS 与 js 总结: 组件数据局部化处理 不管页面组件还是小组件,都可能会被多次复用 ...
- jQuery设置input的type属性
$("#inputName").attr("type","text");
- Android 如何从系统图库中选择图片
转:http://blog.csdn.net/tody_guo/article/details/7560270 这几天我都在做Android的App,同时学习它的API,我将分享一些我学到的东西,比如 ...