从Maven到Nexus,软件公司设立私服的原因何在?

Posted 研发云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从Maven到Nexus,软件公司设立私服的原因何在?相关的知识,希望对你有一定的参考价值。

在进行软件开发的过程中

无论什么项目、采用何种技术和编程语言

我们都要重复相同的开发步骤

包括收集、构建、编写源代码、配置信息、

测试、打包、发布、文档等等

其中大部分时间都会花销在构建上

从Maven到Nexus,软件公司设立私服的原因何在?

如果所有的构建工作都需要手动去完成

对开发者来说就会浪费巨大的人力和时间成本

因此,让软件自动化的完成这一系列工作

成为Maven的使命

Maven不是Java领域唯一的构建管理解决方案

但却是最受欢迎的方案之一


从Maven到Nexus,软件公司设立私服的原因何在?

Maven是面向技术层面、针对Java的开发项目管理工具,为开发人员提供了构建一个完整的生命周期框架的方案。开发团队可以自动完成项目的基础工具建设,同时实现创建报表、检查、构建和测试等自动化设置。


在Maven中,任何一个依赖(jar包)、插件或者项目输出都称为构件。maven在某一位置存储所有共享的构件,这个统一的位置就是仓库


从Maven到Nexus,软件公司设立私服的原因何在?

当需要进行项目构建时

用户不必单独地下载任何构件

这一切都是因为Maven中央仓库的存在

一个原始的Maven安装就自带了默认远程仓库

——Maven中央仓库

只需访问这个仓库,就能进行构件更新

但是这也会带来一定的问题

因为大部分软件研发公司里都有网络限制

不能随便上外网

如果频繁地进行此类操作,就会出现安全问题

也可能会诱发防火墙进行拦截操作

从Maven到Nexus,软件公司设立私服的原因何在?


所以在大型的软件公司

往往会创建一个单独的Maven本地仓库(私服)

开发者需要的任何构件都可以先从该处获取

如果本地仓库没有

就尝试从中央仓库下载构件至本地仓库

然后再从本地仓库使用构件

这不仅大大节省了网络资源

也能很好地消除网络安全隐患

要想实现这一部署

就需要借助另一款工具Nexus来完成

从Maven到Nexus,软件公司设立私服的原因何在?


我们是谁?

开发者!

我们要干吗?

Maven私服!

靠什么建?

研发云上的Nexus工具!


Nexus是一个基于Maven的仓库管理的项目工具,主要的使用场景就是可以在局域网搭建一个Maven私服,将这个本地仓库用来部署公共构件,或者作为远程仓库在该局域网的一个代理。


从Maven到Nexus,软件公司设立私服的原因何在?

以研发云工具链上的Nexus为例

它提供了强大的仓库管理和构件搜索功能

占用内存较少,用户体验效果上佳

对 Docker,NuGet,npm,Bower都给予支持

还拥有自动管理任务的管理接口

基于简单的文件系统而非数据库的属性

使其日趋成为最流行的Maven仓库管理器

Nexus能配置的几种仓库类型如下


从Maven到Nexus,软件公司设立私服的原因何在?

1、hosted(宿主仓库):用来部署自己、第三方或者公共仓库的构件;


2、proxy(代理仓库):是远程仓库的代理,比如说在Nexus中配置了central repository的proxy,当用户向这个proxy请求一个构件时,这个proxy就会先在本地查找,如果找不到的话,再去远程仓库下载,返回给用户。相当于一个中转的作用;


3、virtual(虚拟仓库):默认提供了一个 Central M1虚拟仓库,用来将maven 2适配为maven 1;


研发云  开发者的好帮手

获取更多产品介绍及业界动态

以上是关于从Maven到Nexus,软件公司设立私服的原因何在?的主要内容,如果未能解决你的问题,请参考以下文章

maven仓库--私服(Nexus的配置使用)

Nexus搭建Maven私服

maven私服nexus的安装

Maven学习 使用Nexus搭建Maven私服

Maven学习 使用Nexus搭建Maven私服

Maven仓库--Nexus的配置使用