天天看点

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

Nexus2.x批量导入本地库是十分容易的,将库文件夹复制到对应nexus库下面,去网页刷新一下索引就OK了,这里不做赘述。在nexus3.x中,我们不可以这么操作,但是我们可以使用shell脚本,批量导入nexus3.x。

我们从下载安装一步步来说明,如果你已经安装好nexus3.x,只想知道批量导入本地库的方法,请移步文章第四部分

1.环境说明

      主机:Win10    虚拟机:Centos7 64位

2.Centos安装JDK

      要求JDK1.7及以上,过程略

3.安装Nexus3.x

       我们采用源码安装的方式

       下载地址:https://www.sonatype.com/download-oss-sonatype

       进入网站之后,下载Unix版

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库
Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

或者在Centos中,用wget方式下载wget https://sonatype-download.global.ssl.fastly.net/nexus/3/nexus-3.15.2-01-unix.tar.gz

我们将此压缩包放到centos用户的家目录的downloads文件夹下面

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

解压缩,会出现两个文件夹,然后启动nexus服务

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库
Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库
Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库
Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

./nexus start的启动方式是后台启动

./nexus run的启动方式是前台启动,显示日志。

由于启动时间较长,我们采用./nexus run的方式启动,以便于我们观察,这两种启动方式都可以,但是经过我的测试,run方式启动之后,./nexus status看到的永远是stopped,start启动之后,status看到running,其实服务不一定是在running,可能正在启动,总之,./nexus status命令并不好用,run启动方式可以让我们清楚的知道服务什么时候确定起来了。

直到出现以下内容,说明服务起来了。

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

在主机浏览器访问192.168.174.129:8081,出现下面的内容。192.168.174.129是我的Centos虚拟机的ip地址。

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

右上角登录,账号:admin 密码:admin123

4.新建仓库,批量导入本地库

  如图点击顺序

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

选择maven2(hosted)

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

按照自身需求填写如下选项

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库
Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

点击Create repository

然后在页面上可以看到我们新建的仓库

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

点击进入,看到该仓库的URL,记下。192.168.174.129是我的Centos虚拟机的ip地址

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

在centos用户的家目录下,新建一个文件夹repo,批量放入我们需要的本地库文件夹

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

新建shell脚本

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库
Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

脚本内容如下:

#!/bin/bash

# copy and run this script to the root of the repository directory containing files
# this script attempts to exclude uploading itself explicitly so the script name is important
# Get command line params
while getopts ":r:u:p:" opt; do
	case $opt in
		r) REPO_URL="$OPTARG"
		;;
		u) USERNAME="$OPTARG"
		;;
		p) PASSWORD="$OPTARG"
		;;
	esac
done

find . -type f -not -path './mavenimport\.sh*' -not -path '*/\.*' -not -path '*/\^archetype\-catalog\.xml*' -not -path '*/\^maven\-metadata\-local*\.xml' -not -path '*/\^maven\-metadata\-deployment*\.xml' | sed "s|^\./||" | xargs -I '{}' curl -u "$USERNAME:$PASSWORD" -X PUT -v -T {} ${REPO_URL}/{} ;
           

赋予脚本可执行权限。

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

回车运行就OK了。

Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库
Nexus3.x批量导入本地库1.环境说明2.Centos安装JDK3.安装Nexus3.x4.新建仓库,批量导入本地库

本文是我辛苦码字截图原创,未经允许不得转载。

继续阅读