一、安装和运行nexus
1、下载nexus:
可选择tgz和zip格式,以及war,选择tgz或zip时不同版本可能在启动时存在一定问题,可能是因为jdk版本问题,若无法启动请选择2.5或更早的版本
注:nexus 2.6版本之后不再支持jdk1.6
2、安装nexus
若下载war,则将其放置tomcat下的webapp目录中,改名为nexus,运行tomcat服务,即可访问: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
浏览器中输入: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>:8081/nexus/content/groups/public-snapshots</url>
<releases><enabled>false</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
<repository>
<id>central-releases</id>
<!-- url原为,指向 其中xxx一般为公司名--->
<url>: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>:8081/nexus/content/groups/public-snapshots</url>
<releases><enabled>false</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
<pluginRepository>
<id>central-releases</id>
<url>: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>