一、安装和运行nexus

1、下载nexus:http://www.sonatype.org/nexus/go

可选择tgz和zip格式,以及war,选择tgz或zip时不同版本可能在启动时存在一定问题,可能是因为jdk版本问题,若无法启动请选择2.5或更早的版本

注:nexus 2.6版本之后不再支持jdk1.6

2、安装nexus

若下载war,则将其放置tomcat下的webapp目录中,改名为nexus,运行tomcat服务,即可访问http://localhost:8081/nexus  默认用户名:admin;密码admin123

若下载tgz或者zip,将其解压至usr/local/目录下(也可自己指定目录),在root/Download目录下:

cp nexus-2.2-01-bundle.zip /usr/local

unzip nexus-2.2-01-bundle.zip

或者

cp nexus-2.2-01-bundle.tar.gz /usr/local

tar xvzf nexus-2.2-01-bundle.tar.gz

为了方便更新和切换版本,创建链接,更新或者切换版本只需更新链接即可:

ln -s nexus-2.2-01 nexus

3、运行nexus

在没有安装为service的情况下运行nexus。

若为较新版本:

cd /usr/local/nexus

./bin/nexus start

若启动成功,nexus会监听8081端口,在日志中可进行查看

tail -f logs/wrapper.log

较早的版本需要进入平台目录下进行启动(较新版本也可以进行启动)

cd /usr/local/nexus/

./bin/jsw/linux-x84-64/nexus start

浏览器中输入http://localhost:8081/nexus即可进入

4、安装nexus为service

以root用户身份,设置为系统服务

cd /etc/init.d

cp /usr/local/nexus/bin /nexus ./nexus

chmod 755 /etc/init.d/nexus

在Red Hat, Fedora, and CentOS中增加nexus服务

$ cd /etc/init.d

增加nexus服务

$ chkconfig --add nexus

添加运行级别3、4、5

$ chkconfig --levels 345 nexus on

启动nexus

$ service nexus start

验证关系成功启动

$ tail -f /usr/local/nexus/logs/wrapper.log

编辑/etc/init.d/nexus的文本

NEXUS_HOME="/usr/local/nexus"

PIDDIR="${NEXUS_HOME}"

RUN_AS_USER = "nexus"   此处用户名可随意选择,最好不要是root

注:①如果使用root,未创建其它用户,则改为root(不建议使用root)

②如果使用该设置,需要:

•  nexus 用户存在

useradd  nexus

• 更改nexus 安装目录的Owner和Group为nexus

chown nexus nexus nexus

启动服务

service nexus start

二、配置maven使用nexus

这里先对Maven的安装作一简单介绍:

下载maven安装包,如apache-maven-3.1.0-bin.tar.gz,并解压

cp apache-maven-3.1.1-bin.tar.gz /usr/local/

tar –zxvf apache-maven-3.1.1-bin.tar.gz

ln –s apache-maven-3.1.1 maven

编辑/etc/profile文件,添加如下代码

export MAVEN_HOME=/opt/apache-maven-3.2.1

export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH

可运行以下命令检查maven安装:

显示路径

echo $MAVEN_HOME

显示信息即成功

mvn -v

接下来要使用Nexus,则需要配置Maven去检查Nexus而非公共的仓库。

创建~/.m2/settings.xml(初始状态下该文件不存在),编辑内容:

<settings>

<profiles>

<profile>

<id>nexus</id>

<repositories>

<repository>

<id>central-snapshots</id>

<url>http://localhost:8081/nexus/content/groups/public-snapshots</url>

<releases><enabled>false</enabled></releases>

<snapshots><enabled>true</enabled></snapshots>

</repository>

<repository>

<id>central-releases</id>

<!-- url原为http://central,指向http://repos.d.xxx.com/nexus/content/groups/public   其中xxx一般为公司名--->

<url>http://localhost:8081/nexus/content/groups/public</url>

<!-- 表示可以从此仓库下载release版本 -->

<releases><enabled>true</enabled></releases>

<!-- 表示不可以从此仓库下载snapshot版本 -->

<snapshots><enabled>false</enabled></snapshots>

</repository>

</repositories>

<!--  插件仓库 -->

<pluginRepositories>

<pluginRepository>

<id>central-snapshots</id>

<url>http://localhost:8081/nexus/content/groups/public-snapshots</url>

<releases><enabled>false</enabled></releases>

<snapshots><enabled>true</enabled></snapshots>

</pluginRepository>

<pluginRepository>

<id>central-releases</id>

<url>http://localhost:8081/nexus/content/groups/public</url>

<releases><enabled>true</enabled></releases>

<snapshots><enabled>false</enabled></snapshots>

</pluginRepository>

</pluginRepositories>

<servers>

<server>

<!--配置所有的releases版本构件部署Nexus的releases仓库中-->

<id>nexus-releases</id>

<username>admin</username>

<password>admin123</password>

</server>

<server>

<!--配置所有的snapshot版本构件部署到Nexus的Snapshots仓库中-->

<id>nexus-snapshots</id>

<username>admin</username>

<password>admin123</password>

</server>

</servers>

</profile>

<!--  配置activeProfiles后,此处添加snapshots,可以使snapshots被搜索到。-->

</profiles>

<!--添加id,激活profile。-->

<activeProfiles>

<activeProfile>nexus</activeProfile>

</activeProfiles>

</settings>

注:将nexus配置成所有仓库的镜像之后,maven会从本地的nexus安装查阅,而非去外面查阅中央maven仓库。如果对nexus有一个构件请求,本地的nexus安装会提供这个构件;如果Nexus没有这个构件,nexus会从远程仓库获取这个构件,然后添加至远程仓库的本地镜像。

三、配置nexus仓库

Nexus有许多默认仓库:Central,Releases,Snapshots,和3rd Party

1.配置central仓库

Nexus内置了Maven中央代理仓库Central。选择仓库列表中的 Central,如图3.1:

图3.1

点击Configuration进行配置:

Repository Policy为release,则不会代理远程仓库的snapshot构件(snapshot版本构件不稳定且不受控制,使用这样的构件含有潜在的风险)。

“Remote Storage Location”为远程仓库地址,http://repo.maven.org/maven2/ ;

“Download Remote Indexes”是否下载远程索引文件,默认为False,(中央仓库有大量的构件,其索引文件也很大,容易消耗大量的 中央仓库带宽)。将其设置为True(其他代理仓库也需要改成True),然后点击Save。在Nexus下载的中央仓库索引文件之后,我们就可以在本地搜索中央仓库的所有构件。

2.Releases用于部署自己的release构件,Snapshots用于自己的snapshot构件。3rd Party用于部署第三方构件,修改Configuration下Deployment Policy为Allow Redeploy,则可以在Artifact Upload中上传本地文件。

新增代理仓库

1.新增代理仓库。如图3.2

图3.2 nexus新增代理仓库

2.添加信息具体。如图3.3

3.3 添加仓库信息

3.添加仓库至组

添加仓库到公共nexus仓库组。如图3.4

Ordered Group Repositories:已在使用中的仓库。检索顺序与排序一致

Available Repositories:已有未被使用

如图3.4

四、用户使用

1.在开发环境中替换/rhome/用户名/.m2 目录下的文件settings.xml(新环境中可能没有此文件);

2.修改maven安装目录下/conf/settings.xml文件。修改成干净的文件。

<localRepository>/workspace/repository</localRepository>此标签可以修改本地仓库路径,也可以在eclipse中User Settings中设置。

3.在【工程名】下面执行 mvn  clean  install,即从私服里面下载pom文件里的 jar 包;

4.在eclipse开发工具中  clean 【工程名】,刷新jar包目录即可;

Linux下安装配置Nexus的更多相关文章

  1. Linux 下安装配置 JDK7

    Linux 下安装配置 JDK7 配置环境(debian 7) 自从从Oracle收购Sun近三年来,已经有很多变化.早在8月,甲骨文将“Operating System Distributor Li ...

  2. (转载)Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记

    Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记 Linux下配LMAP环境,花了我好几天的时间.之前没有配置过,网上的安装资料比较混乱,加上我用的版本问题,安装过程 ...

  3. linux 下安装配置jboss as7以及部署应用

    linux 下安装配置jboss as7以及部署应用 1.测试平台及软件 centos 5.4 jdk-7u5-linux-i586.rpm jboss-as-7.1.1.Final.zip jbos ...

  4. Linux下安装配置与使用MySQL数据库

    Linux下安装配置与使用MySQL数据库 在Linux下安装做开发时往往少不了要使用到MySQL数据库,下面就Linux系统为例讲解一下,如何安装MySQL数据库,如何启用/停.止MySQL服务,如 ...

  5. 在linux下安装配置rabbitMQ详细教程

    在linux下安装配置rabbitMQ详细教程 2017年12月20日 17:34:47 阅读数:7539 安装Erlang 由于RabbitMQ依赖Erlang, 所以需要先安装Erlang. Er ...

  6. Linux下安装配置MySQL5.7服务器

    Linux下安装配置MySQL服务器 一.安装环境 ============ OS:centos6.8 MySQL:mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz ...

  7. Linux下安装配置Jmeter5.1,并执行jmx文件

    Windows下的jmeter是GUI模式,可查看操作,但是GUI对性能的干扰比较大,所有一般压测会在Linux上运行. 下面是Linux下安装配置Jmeter5.1,并执行jmx文件的步骤, 一.安 ...

  8. linux下安装配置svn服务器

    linux下安装配置svn服务器 1. svn服务器安装 将subversion-1.4.0.tar.gz和subversion-deps-1.4.0.tar.gz传到服务器. tar xfvz su ...

  9. Kali Linux 下安装配置MongoDB数据库 ubuntu 下安装配置MongoDB源码安装数据库

    Kali Linux 下安装配置MongoDB数据库   1.下载mongodb.tgz 压缩包: 2.解压到:tar -zxvf mongodb.tgz /usr/local/mongodb 3.创 ...

随机推荐

  1. c#如何读取相机手机的拍摄时间

    /// 获中的照片拍摄日期 /// </summary> /// <param name="fileName">文件名</param> /// ...

  2. Android客户端与PHP服务端交互(一)---框架概述

    背景 作为一个普通上班族,总是想做一些自认为有意义的事情,于是乎准备成立一个工作室,尽管目前正在筹备阶段,但是之前有些朋友提出一些需求的时候,我发现自己的能力还是有限,直到最近和一些技术牛朋友聊起这事 ...

  3. html5开发之viewport使用

    随着高端手机(Andriod,Iphone,Ipod,WinPhone等)的盛行,移动互联应用开发也越来越受到人们的重视,用html5开发移动应用是最好的选择.然而,每一款手机有不同的分辨率,不同屏幕 ...

  4. SQL SERVER 2008 如何查询含有某关键词的表

    最新文章:Virson's Blog 文章来自:百度知道 /** 查询一个数据库中所有的数据中是否包含指定字符串 */ ) set @str='字符串' --要搜索的字符串 ) declare tb ...

  5. Selenium WebDriver屏幕截图(C#版)

    Selenium WebDriver屏幕截图(C#版)http://www.automationqa.com/forum.php?mod=viewthread&tid=3595&fro ...

  6. HiKey连接

    http://wiki.lemaker.org/LeMaker_Hikey:FAQ/zh-hans

  7. UNIX环境高级编程笔记之进程控制

    本章重点介绍了进程控制的几个函数:fork.exec族._exit.wait和waitpid等,主要需要掌握的是父进程和子进程之间的运行机制,怎么处理进程的正常和异常终止.以及怎么让进程执行不同的程序 ...

  8. 同程旅游网开放平台SDK开发完成

    最近利用业余时间,使用了同程旅游网的开放平台,并对大部分的方法进行了调用,发现有很多不好用的地方,比如 1.同一个开放平台居然有几个调用地址,景区调用http://tcopenapi.17usoft. ...

  9. Android开发艺术探索笔记—— View(一)

    Android开发艺术探索笔记 --View(一) View的基础知识 什么是View View是Android中所有控件的基类.是一种界面层控件的抽象. View的位置参数 参数名 获取方式 含义 ...

  10. 理解RxJava:(三)RxJava的优点

    理解RxJava:(三)RxJava的优点 在第一部分,讲解了RxJava的基本结构.在第二部分,展示了operators的强大之处.但是你们可能仍然没有被说服,也没有足够的理由信服.下面是一些能让你 ...