现在的位置: 首页 > 综合 > 正文

Nexus的安装和应用

2013年12月05日 ⁄ 综合 ⁄ 共 2579字 ⁄ 字号 评论关闭

一、环境

操作系统:Windows XP,

JDK:JDK 1.6.0

Nexus:nexus-oss-webapp-1.8.0.1-bundle.zip

其他软件:Cygwin 、apache-maven-3.0.2。

二、下载和安装

1、下载

进入链接http://nexus.sonatype.org/downloads/,下载目前的最新版本nexus-oss-webapp-1.8.0.1-bundle.zip到E:/。

2、安装

Nexus提供了两种安装方式,一种是内嵌Jetty的bundle,只要你有JRE就能直接运行。第二种方式是WAR,你只须简单的将其发布到web容器中即可使用。本文档只演示bundle安装。

A、解压nexus-oss-webapp-1.8.0.1-bundle.zip到E:/,目录E:/nexus-oss-webapp-1.8.0.1-bundle下有两个文件夹。clip_image002

B、开始->运行->cmd,到目录E:/nexus-oss-webapp-1.8.0.1-bundle/nexus-oss-webapp-1.8.0.1/bin/jsw/windows-x86-32下启动nexus.bat,看到“Started SelectChannelConnector@0.0.0.0:8081”则表明nexus启动成功。clip_image004

clip_image006

C、然后打开浏览器,访问http://127.0.0.1:8081/nexus,会看到如下的页面:

clip_image008

D、要停止Nexus,Ctrl+C即可,此外InstallNexus.bat可以用来将Nexus安装成一个windows服务,其余的脚本则对应了启动,停止,暂停,恢复,卸载Nexus服务。

3、应用

A、Nexus定义

Nexus是Maven中间代理的仓库管理器,介于本地仓库(settings.xml的设置地方)和Maven中央仓库之间。

在本地架设一个Maven仓库服务器,在代理远程仓库的同时维护本地仓库,以节省带宽和时间,Nexus就可以满足这样的需要。

B、Nexus特征

提供了强大的仓库管理功能,构件搜索功能,它基于REST,友好的UI是一个extjs的REST客户端,它占用较少的内存,基于简单文件系统而非数据库。这些优点使其日趋成为最流行的Maven仓库管理器。

C、登录

点击页面右上角的login,输入默认的用户名和密码:admin/admin123。

clip_image002[5]

登陆后的界面如下:

clip_image004[5]

页面可以管理仓库,配置Nexus系统,管理任务,管理用户,角色,权限,查看系统的RSS源,管理及查看系统日志,等等。你会看到Nexus的功能十分丰富和强大。

D、代理Maven中央仓库

点击左边导航栏的views/Repositories->Repositories,界面的主面板会显示所有一个所有仓库及仓库组的列表。

clip_image002[7]

Type字段值有group,hosted,proxy,virtual。这里我们不关心virtual,只介绍下另外三种类型。

类型

类型名称

类型含义

hosted

本地仓库

部署自己的构件到这一类型的仓库

proxy

代理仓库

代理远程的公共仓库,如maven中央仓库

goup

仓库组

用来合并多个hosted/proxy仓库,通常我们配置maven依赖仓库组

我们需要配置一个Maven中央仓库的proxy,其实Nexus已经内置了Maven Central,但我们需要做一些配置。

clip_image004[7]

E、添加一个代理仓库

我们想要代理Sonatype的公共仓库,其地址为:http://repository.sonatype.org/content/groups/public/。步骤如下,在Repositories面板的上方,点击Add,然后选择Proxy Repository,在下方的配置部分,我们填写如下的信息:Repository ID - sonatype;Repository Name - Sonatype Repository;Remote Storage Location - http://repository.sonatype.org/content/groups/public/。其余的保持默认值,需要注意的是Repository Policy,我们不想代理snapshot构件,原因前面已经描述。然后点击Save。配置页面如下:

clip_image002[9]

F、管理本地Maven仓库

Nexus预定义了3个本地仓库,分别为Releases,Snapshots,和3rd Party。这三个仓库都有各自明确的目的。

本地仓库

本地仓库含义

Releases

部署自己的release构件

Snapshots

部署自己的snapshot构件

3rd Party

部署第三方构件,如Oracle的JDBC驱动

可以创建自己的本地仓库,步骤和创建代理仓库类似,点击Repository面板上方的Add按钮,然后选择Hosted Repository,然后在下方的配置面板中输入id和name,注意这里我们不再需要填写远程仓库地址,Repository Type则为不可修改的hosted,而关于Repository Policy,你可以根据自己的需要选择Release或者Snapshot。

G、部署构建至Nexus

添加本地的jxl.jar,如下所示

clip_image002[11]

同理添加mysql-connector-java-5.1.0-bin.jar,查看添加的3rd party如下图:

clip_image004[9]

Pom.xml文件:

clip_image006[6]

clip_image008[6]

在Maven的settings.xml配置文件中使用Nexus:

nexus-releases

admin

admin123

nexus-snapshots

admin

admin123

 

dev

local-nexus

http://127.0.0.1:8081/nexus/content/groups/public/

true

true

dev

H、检验部署构建是否成功

修改dbviewer中的pom.xml依赖为:

com.run

mysql-connector

5.1.0

bin

com.run

jxl

2.0

运行mvn package命令:

clip_image002[13]

打包成功:

clip_image004[11]

查看目录E:/maven_project/dbviwer/target存在dbviwer-1.0-SNAPSHOT.jar,如图:

clip_image006[8]

 

四、附录

安装和应用的一些知识请参考链接:http://juvenshun.javaeye.com/blog/349534

抱歉!评论已关闭.