nexus私服仓库批量导入本地jar
nexus私服批量导入本地库

顺序如图

选择maven2(hosted)

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

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

点击进入,看到该仓库的URL,记下

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

在repo文件夹新建shell脚本

#!/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}/{} ;
赋予脚本(脚本放到repo内)可执行权限。
./mavenimport.sh -u admin -p admin123 -r http://maven服务ip:maven服务端口/repository/my *
使用vi mavenimport.sh进入后底部执行:set ff 看下.sh的格式
什么原因呢, 我们有理由怀疑是文件格式问题? 我们用vim mavenimport.sh进入mavenimport.sh这个文件, 然后在底部模式下, 执行:set ff查看一下, 结果发现fileformat=dos, 看看, 果然是文件格式问题, 那怎么解决呢?
方法一:vim mavenimport.sh进入mavenimport.sh后, 在底部模式下, 执行:set fileformat=unix后执行:x或者:wq保存修改。 然后就可以执行./mavenimport.sh运行脚本了。(我亲自试过, 是ok的)
 方法二:直接执行sed -i "s/\r//" mavenimport.sh来转化, 然后就可以执行./mavenimport.sh运行脚本了。(我亲自试过, 是ok的)
 方法三:直接执行dos2unix mavenimport.sh来转化, 然后就可以执行./mavenimport.sh运行脚本了。(我的linux上执行dos2unix ./mavenimport.sh失败, 但是不要放弃啊, 加个busybox就可以了)
完事再执行下
回车运行就OK了。


以上就是批量导入jar的一个流程,希望能帮助到你。

评论 (0)