Maven 使用 二——nexus
上篇博客介绍了创建maven项目的两种方式,当中一种是使用命令行的方式来创建,这种情况非常少,一般我们都有IDE开发环境。所以接下来,我们还是在一个详细的IDE中来说,我使用的是Eclipse。
一、nexus
maven的使用,当中一点便利就是对jar包的引用。我们不再须要费力的去拷贝jar,还有jar包的版本号的统一等。弄得项目中存在不同程度的jar包冗余,甚至不同模块的jar包版本号还不统一。
通过Maven,终于我们仅仅须要共享一份同样的资源就可以。
我们的local repository 的资源都是来自同一个地方:central repository。这个central repository 全世界仅仅有一个。资源甚多,我们开发项目须要的资源仅仅是沧海一粟,这来回訪问。消耗的时间怎么算。假设网不好,有怎么说?其二。central repository是为全人类服务的。那我们须要的那点资源也无法被我们管理;其三,团体项目不仅须要下载jar包,很多其它的时候,也须要把开发的jar包,像central repository中的资源一样。放到一个团体共享的地方,被团队调用。于是 nexus 出现了。
Nexus 是Maven仓库管理器,假设你使用Maven,你能够从Maven中央仓库 下载所须要的构件(artifact)。但这通常不是一个好的做法。你应该在本地架设一个Maven仓库server,在代理远程仓库的同一时候维护本地仓库。以节省带宽和时间。Nexus就能够满足这种须要。此外。他还提供了强大的仓库管理功能,构件搜索功能,它基于REST。友好的UI是一个extjs的RESTclient。它占用较少的内存,基于简单文件系统而非数据库。
这些长处使其日趋成为最流行的Maven仓库管理器。
nexus + maven 能给我们带来极大便利。
二、Nexus 安装
Nexus通常是搭建在局域网内的,共团队合作开发。管理jar包。
你能够从http://nexus.sonatype.org/downloads/ 下载最新版本号的Nexus。Nexus提供了两种安装方式,一种是内嵌Jetty的bundle,仅仅要你有JRE就能直接执行。
另外一种方式是WAR,你仅仅须简单的将其公布到web容器中就可以使用。我使用的就是第一种方式,另外一种木有尝试。
bundle方式安装
- 解压nexus-2.5.1-bundle.zip到D:\nexus\nexus-2.5.1-bundle\(可自己定义)
- 进入nexus\nexus-2.5.1-01\bin\jsw 进入对应的系统目录(若系统位64位,jdk位32位。则应进入32位的目录下,如:win8 64位系统安装32位JDK,则进入windows-x86-32目录)
- 右键install-nexus.bat 文件,使用管理员权限执行。第一次执行界面一闪而过,能够再次执行确定是否成功
右键start-nexus.bat 文件。使用管理员权限执行。成功之后对话框消失,若出现错误,请确认nexus与JDK版本号是否匹配。规则例如以下:
1.6的JDK支持2.5版本号下面的Nexus
1.7版本号的JDK支持2.6版本号下面的Nexus
64位的系统相对上述规则支持的Nexus版本号更低浏览器输入http://192.168.24.252:8081/nexus (192.168.24.252为nexus安装serverip地址),出现例如以下界面则nexus成功安装。
8081为默认的port号。要改动port号可进入nexus-2.1.2-bundle\nexus-2.1.2\conf\打开nexus.properties文件,改动application-port属性值就能够了。开启远程索引
通常到这里,对于nexus的安装还不算完美, 新搭建的neuxs环境仅仅是一个空的仓库,须要手动和远程中心库进行同步。nexus默认是关闭远程索引下载,最重要的一件事情就是开启远程索引下载。登陆nexus系统,默认usernamepassword为admin/admin123。
点击左边Administration菜单下面的Repositories。找到右边仓库列表中的Central,——》configuration下把Download Remote Indexes改动为true。例如以下图
等待其下载完毕。有时网速比較慢,可能等待的时间比較长,是否如今成功,在 browse index 中进行验证。如图:
假设下载完毕,能够体验一下效果,在左边菜单条里面有个Artifact Search, 在输入框里面输入你想要搜索的构件名字,比方:junit, 右边显示出全部的查询结果,就成功了。
三、nexus 配置
repository
nexus的仓库类型分为下面四种:
group: 仓库组
hosted:宿主
proxy:代理
virtual:虚拟
同一时候 nexus中存在 repository group的概念,利用这个group 能够进行批量的管理。
每一个repository的简要解释例如以下:
1. 3rd party: 无法从公共仓库获得的第三方公布版本号的构件仓库
2. 特定repository ,有两个。 Apache Snapshots和 Codehaus Snapshots,分别代理ApacheMaven和CodehausMaven 仓库的快照版本号构件的仓库
3. Central: 用来代理maven中央仓库中公布版本号构件的仓库
4. Central M1 shadow: 用于提供中央仓库中M1格式的公布版本号的构件镜像仓库
5. 内部版本号repository: Releases和Snapshots。
当然我们也能够自己创建repository。
authority
在权限设置这块,仅仅要包括下面三个部分。
1. privilege
2. role
3. user
我们能够自己定义设置这三个部分。顺序由上自下,操作步骤都非常easy,这里就不做演示。
nexus能够让maven变得更强大。他们之间的关系图例如以下:
Maven 使用 二——nexus的更多相关文章
- Linux安装配置maven以及搭建nexus私服(编写启动脚本)
2011年07月12日16:32 下面介绍在Linux操作系统下安装配置maven和搭建nexus私服. 一.安装前的准备 下载 jdk http://www.oracle.com/technetw ...
- 【Maven学习】Nexus私服代理其他第三方的Maven仓库
一.背景 [Maven学习]Nexus OSS私服仓库的安装和配置 http://blog.csdn.net/ouyang_peng/article/details/78793038 [Maven学习 ...
- 【Maven学习】Nexus OSS私服仓库的备份与迁移
背景 在上一篇博客 [Maven学习]Nexus OSS私服仓库的安装和配置 中,我们已经在机房搭建好了新的Nexus OSS私服仓库.下面是两个版本的Nexus OSS私服仓库的对比图. 老的Nex ...
- 3.发布Maven项目到nexus中
1.在pom.xml文件中配置需要发布的工厂 如果想把项目发布到nexus中,需要在pom.xml中配置releases和snapshots版本发布的具体repository <distribu ...
- maven(项目管理工具系列 maven 总结二)
♣maven是什么? ♣maven下载.安装 ♣了解maven仓库 ♣eclipse配置maven ♣创建maven项目 ♣把maven项目转化为web项目 1.maven是什么? Maven是一个项 ...
- window Maven私服搭建——nexus
注:本文来源于 <window Maven私服搭建--nexus> Maven私服搭建--nexus 1.下载nexus https://www.sonatype.com/downlo ...
- 让maven项目使用nexus作为远程仓库
让maven项目使用nexus作为远程仓库有两种方式,第一种是在项目的pom.xml中进行更改,让单个项目使用nexus仓库:另一种是通过修改maven的配置文件settings.xml进行更改,让所 ...
- Maven私服架设(nexus / on windows)
Maven私服可以用多个不同的产品可供选择,下面我们演示使用最为广泛的nexus来架设maven本地私服 Nexus的下载及安装请见官方下载页: http://www.sonatype.org/n ...
- 异常Failure to transfer org.apache.maven.plugins:maven-surefire-plugin:pom:2.12.4 from http://maven.aliyun.com/nexus/content/groups/public was ...
错误异常:Failure to transfer org.apache.maven.plugins:maven-surefire-plugin:pom:2.12.4 from http://maven ...
随机推荐
- virtualbox网络相关
前言 Baidu/google了n多次, 效果不佳. 网上说的都是比较老的virtualbox版本,有的是默认就bridge方式(2.2.0前), 有的不是bridge方式的,是通过工具uml-uti ...
- Codeforces 362E Petya and Pipes 费用流建图
题意: 给一个网络中某些边增加容量,增加的总和最大为K,使得最大流最大. 费用流:在某条边增加单位流量的费用. 那么就可以2个点之间建2条边,第一条给定边(u,v,x,0)这条边费用为0 同时另一条边 ...
- locust===注意事项
1.安装包在:微盘 2.运行命令是:locust -f load_test.py --host=https://www.baidu.com 3.本地打开的是:http://localhost:8089 ...
- Java坦克大战 (四) 之子弹的产生
本文来自:小易博客专栏.转载请注明出处:http://blog.csdn.net/oldinaction 在此小易将坦克大战这个项目分为几个版本,以此对J2SE的知识进行回顾和总结,希望这样也能给刚学 ...
- html实现点击章节自动调到开头
#转载请联系 原理是用id的值结合a链接实现锚点效果.比较简单,直接放一段代码好了. <!DOCTYPE html> <html lang="en"> &l ...
- k8s的持久化存储PV&&PVC
1.PV和PVC的引入 Volume 提供了非常好的数据持久化方案,不过在可管理性上还有不足. 拿前面 AWS EBS 的例子来说,要使用 Volume,Pod 必须事先知道如下信息: 当前 Volu ...
- ORM- 图书系统查询
图书信息系统 表结构设计 # 书 class Book(models.Model): title = models.CharField(max_length=32) publish_date = mo ...
- python debug小技巧&&工程能力的几点建议
Debug小技巧: 转载请声明本文的引用出处:仰望大牛的小清新 1.初次编程时,在每一个if后面都写上else,这样,如果你的else原本是不应该运行的,那么就可以在else中输出此时的状态信息便于排 ...
- ACM-ICPC 2018 沈阳赛区网络预赛 D. Made In Heaven(第k短路模板)
求第k短路模板 先逆向求每个点到终点的距离,再用dij算法,不会超时(虽然还没搞明白为啥... #include<iostream> #include<cstdio> #inc ...
- tensorflow bilstm官方示例
''' A Bidirectional Recurrent Neural Network (LSTM) implementation example using TensorFlow library. ...