Maven实战(十)利用 Nexus 来构建企业级 Maven 仓库
目录
一、简介
Nexus是Maven仓库管理器,用来搭建一个本地仓库服务器,这样做的好处是便于管理,节省网络资源,速度快,还有一个非常有用的功能就是可以通过项目的SNAPSHOT版本管理,来进行模块间的高效依赖开发
一、为什么要用Nexus
虽然可以通过中央仓库来获取我们所需要的jar包,但是现实往往是存在很多问题:
网速慢,我们可能需要花很长的时间来下载所需要的jar
如果我们的公司很大,有几百甚至几千人在用Maven,那么这些人都去通过中央仓库来获取jar,那么这是一个很大的资源浪费
如果存在模块之间的依赖开发,我们的伙伴就不能很方便的获取快照版本。
在实际开发过程中,有些jar的版本可能在中央仓库里面不存在,或者更新不及时,我们是获取不到这个jar的。
所有以上问题,可以通过Nexus解决。
这个仓库是本地的,下载的速度是从远程下载不可比的。
它可以为我们公司的所有Maven使用者服务,进行统一管理
它能很好的帮我们进行存在模块依赖的项目的开发
可以添加自己的第三方包
二、下载与安装
下载地址:http://www.sonatype.org/nexus/go
执行命令:
cd C:\nexus\nexus-2.0.4\bin\jsw\windows-x86-64\
安装:install-nexus.bat
启动: start-nexus.bat
三、登录和修改密码
访问:http://localhost:8081/nexus
点击右上角登录,用户名/密码:admin/admin123
按如下图所示修改密码 
四、搜索jar和仓库介绍
可以在搜索栏搜索想要的jar包和pom,点击repositories可以看到当前的仓库
以Maven中心仓库为例,下图是仓库信息的简介

五、自定义仓库
如下图点击add->hosted Repository

输入Repository id和Repository name然后点击save即可
成功后将会在仓库列表中显示
六、上传jar到仓库
上一步新建了仓库名为test,点击test,在Artifact Upload中填写内容如下图,并上传jar包,点击提交即可

七、组合仓库
在仓库列表中有一个名叫Public Repositories的仓库,该仓库是由多个仓库组合而成,客户端将会默认使用Public 仓库里面的jar包,这个Public 仓库是可以进行配置的,如下图,将右边的仓库移到左边,则该仓库将变为可用的。

八、代理第三方仓库
添加Proxy仓库可以代理第三方的仓库,以便扩大私服的jar包索引
Maven实战(十)利用 Nexus 来构建企业级 Maven 仓库的更多相关文章
- Maven之Nexus构建企业级Maven仓库
什么是Nexus? Nexus是Maven仓库管理器,用来搭建一个本地仓库服务器,这样做的好处是便于管理,节省网络资源,速度快,还有一个非常有用的功能就是可以通过项目的SNAPSHOT版本管理,来进行 ...
- Maven实战读书笔记(二):Maven坐标与仓库
2.1 Maven坐标 Maven坐标是Maven用来表示一个组件依赖的标示. Maven通过下面几个元素定义坐标:groupId.artifactId.version.packaging.class ...
- Maven实战读书笔记(一):Maven概述
1.1 Maven是什么,能做什么 Maven是一个跨平台的项目管理工具,主要服务于Java平台的项目构建.依赖管理和项目信息管理. Maven的用途之一是项目构建,能够自动化构建过程,从清理.编译. ...
- Maven实战(三)Eclipse构建Maven项目
1. 安装m2eclipse插件 要用Eclipse构建Maven项目,我们需要先安装meeclipse插件 点击eclipse菜单栏Help->Eclipse Marketplac ...
- (转)Maven实战(三)Eclipse构建Maven项目
1. 安装m2eclipse插件 要用Eclipse构建Maven项目,我们需要先安装meeclipse插件 点击eclipse菜单栏Help->Eclipse Marketplac ...
- Maven实战读书笔记(六):Maven灵活构建
Maven为了支持构建的灵活性,内置了3大特性,即:属性.Profile和资源过滤. 6.1 Maven属性 Maven的属性与Java代码的常量有异曲同工之妙,都是为了消除重复,对相关内容进行统一管 ...
- Maven实战读书笔记(四):Maven生命周期与插件
Maven的生命周期是对所有构建过程的抽象和统一.包含了项目的清理.初始化.编译.测试.打包.集成测试.验证.部署和站点生成等几乎所有构建步骤. Maven的生命周期是抽象的,其实际行为是由插件来完成 ...
- 使用Maven那么久了,你对企业级Maven的核心配置了解多少?
写在前面 相信从事Java工作的小伙伴们多多少少都会接触到Maven.使用Maven来搭建项目,能够极大的方便我们构建项目的依赖关系,对于项目中需要依赖的Jar包,也只是简单的在pom.xml中进行配 ...
- Maven实战读书笔记(七):Maven常用功能
7.1.资源排除 <resources> <!-- 启动过滤,包含的文件会被过滤掉 --> <resource> <directory>src/main ...
随机推荐
- HTML5的新结构标签
在之前的HTML页面中,大家基本上都是用了Div+CSS的布局方式.而搜索引擎去抓取页面的内容的时候,它只能猜测你的某个Div内的内容是文章内容容器,或者是导航模块的容器,或者是作者介绍的容器等等.也 ...
- c#基础学习(0806)之可变参数、ref和out关键字的简单使用
params可变参数: 1.无论方法有几个参数,可变参数必须出现再参数列表的最后,可以为可变参数直接传递一个对应类型的数组: 2.可变参数可以传递参数也可以不传递参数,如果不传递参数,则数组为一个长度 ...
- MVC部分视图
// 以视图名使用当前文件夹下的视图 // 如果没有找到,则搜索 Shared 文件夹 @Html.Partial("ViewName") @Html.Partial(“视图” ...
- JavaScript 带参数函数定义
函数的参数parameters在函数中充当占位符(也叫形参)的作用,参数可以为一个或多个.调用一个函数时所传入的参数为实参,实参决定着形参真正的值. 这是带有两个参数的函数, param1 和 par ...
- Jupyter Notebook 快速入门[转]
Jupyter Notebook(此前被称为 IPython notebook)是一个交互式笔记本,支持运行 40 多种编程语言.在本文中,我们将介绍 Jupyter notebook 的主要特性,以 ...
- Jetty源码解析(web.xml的处理机制)
org.eclipse.jetty.webapp 包下的 StandardDescriptorProcessor类.该类对象会在WebAppContext的doStart方法启用 注册了遍历web.x ...
- proto3 笔记1
定义 Message 类型, 例子如下: syntax = "proto3"; message SearchRequest { string query = 1; int32 pa ...
- K:图的存储结构
常用的图的存储结构主要有两种,一种是采用数组链表(邻接表)的方式,一种是采用邻接矩阵的方式.当然,图也可以采用十字链表或者边集数组的方式来进行表示,但由于不常用,为此,本博文不对其进行介绍. 邻接 ...
- 洛谷P3437 [POI2006]TET-Tetris 3D(二维线段树 标记永久化)
题意 题目链接 Sol 二维线段树空间复杂度是多少啊qwqqq 为啥这题全网空间都是\(n^2\)还有人硬要说是\(nlog^2n\)呀.. 对于这题来说,因为有修改操作,我们需要在外层线段树上也打标 ...
- UVAlive6807 Túnel de Rata (最小生成树)
题意 题目链接 Sol 神仙题Orz 我们考虑选的边的补集,可以很惊奇的发现,这个补集中的边恰好是原图中的一颗生成树: 并且答案就是所有边权的和减去这个边集中的边的权值: 于是我们只需要求最大生成树就 ...