nexus私服批量上传maven库,nuget库,npm库(上传jar包可以自动检测版本号)

MAVEN批量上传

先上代码

:: init params
set groupId=组织id
set url=hosted类型的maven库(别忘记在setting.xml配置)
set repositoryId=project-test(maven私库名)
set deployFile=*.jar
echo Searching jar file..

rem 启用"延缓环境变量扩充" 
for %%f in (%deployFile%) do (
   set name=%%f
:: 去掉后缀,获取到版本号
   set prefixName=!name:.jar=!
   for /f "delims=" %%a in ("!prefixName!") do (
    set "str=%%~a"
    set "str=!str:-=\!"
    call:getlast "!str!"
)
)
pause
exit

 :getlast
set var=%~nx1
echo !var!
 echo !name! to deploy to %url%
 call mvn deploy:deploy-file -DgroupId=%groupId% -DartifactId=!prefixName! -Dversion=!var! -Dpackaging=jar -Dfile=!name! -Durl=%url% -DrepositoryId=%repositoryId%
goto :eof

1、 首先创建一个文件夹,将提供的.bat文件和想要上传的jar包放到同一个文件夹里

nexus私服批量上传maven库,nuget库,npm库(上传jar包可以自动检测版本号)_第1张图片
2、 然后右击.bat文件,点击编辑,如下图将所需要填写的两个位置填写,第一个是组织id,一般为公司或者组织网址的反写,最后一个找到你的nexus的hosted类型的maven库,点击后面的copy会提供给你这个库的url。并且上传之后会根据jar包名字上的版本号来进行上传,是bat根据“-”检测版本号,当文件名出现多个“-”也可以正常获取,但是一定要有啊,这bat指令搞得头疼
nexus私服批量上传maven库,nuget库,npm库(上传jar包可以自动检测版本号)_第2张图片
3、 为该库配置账号密码到maven的setting.xml文件,按照下图在中添加,然后id就是刚才库的名称,账号密码根据自己配置的填好保存即可
nexus私服批量上传maven库,nuget库,npm库(上传jar包可以自动检测版本号)_第3张图片
4、 双击.bat文件即可传输jar包(注意重复的包不要上传,会报错,但是不影响整体的传输)
nexus私服批量上传maven库,nuget库,npm库(上传jar包可以自动检测版本号)_第4张图片

NPM批量上传

先上代码

@echo off
:: init params
set deployFile=*.tar.gz
set deployFile2=*.tgz
set url=http://192.168.2.142:8081/repository/npm-hosted/
echo Searching tar.gz and tgz file...
rem 启用"延缓环境变量扩充"
SETLOCAL ENABLEDELAYEDEXPANSION
for %%f in (%deployFile% %deployFile2%) do (
   set name=%%f
   echo !name! to deploy to %url%
   rem deploy to server
   call npm publish -registry=%url% !name!
)

pause

1、首先要下载安装node.js(下载地址:https://nodejs.org/en/)
2、配置npm仓库地址
npm config -g set registry 远程仓库地址

3、登录hosted仓库
npm adduser -registry=hosted类型npm仓库的地址,这里需要登录仓库,会填写用户名、密码、email,可再nexus查看

4、对于nexus设置security–>Realms
添加“npm Bearer Token Realm”
在这里插入图片描述
5、对于上传的npm要求
将打包的文件放到为package文件下
a、用7-Zip压缩为tar
b、再次用7-Zip将压缩的tar文件进行压缩,选择gZip压缩成tar.gz。压缩名可以任意
若是linux一次性压缩的tgz,npm打包的文件也是放到package目录下进行压缩
注意:打包文件放到package下,压缩包打开看到的目录为package,package进入
目录下npm打包的文件。
在这里插入图片描述
6、右键bat文件编辑,将url改成hosted类型的npm的仓库
nexus私服批量上传maven库,nuget库,npm库(上传jar包可以自动检测版本号)_第5张图片
7、将uploadNpmPac.bat放到需要上批量上传的文件下,双击即可运行

NUGET批量上传

先上代码

@echo off
:: init params
set url=http://192.168.2.142:8081/repository/nuget-hosted/
set deployFile=*.nupkg
echo Searching nupkg file...
rem 启用"延缓环境变量扩充"
SETLOCAL ENABLEDELAYEDEXPANSION
for %%f in (%deployFile%) do (
   set name=%%f
   echo !name! to deploy to %url%
   rem deploy to server
   nuget push  !name!  ce65bd27-d98f-3db0-919d-ede38c3a68b7  -source  %url%  
)

pause

1、 在nexus设置security–>Realms 添加NuGet API-Key Realm
nexus私服批量上传maven库,nuget库,npm库(上传jar包可以自动检测版本号)_第6张图片
2、安装nuget(下载地址:https://dist.nuget.org/win-x86-commandline/latest/nuget.exe)
3、将上传的nuget包放到同一文件下
nexus私服批量上传maven库,nuget库,npm库(上传jar包可以自动检测版本号)_第7张图片
4、获取nexus私服的NuGet API Key
可在点击admin账号,在新的页面点解NuGet API Key --> Access API Key
nexus私服批量上传maven库,nuget库,npm库(上传jar包可以自动检测版本号)_第8张图片
5、修改uploadNugetPac.bat脚本文件,鼠标右键uploadNugetPac.bat编辑,上面的set url=填写hosted类型的nuget仓库,修改nuget push !name! ce65bd27-d98f-3db0-919d-ede38c3a68b7 -source %url%
将“!name!”后“-source”前的key替换为上一步获取的key,保存
nexus私服批量上传maven库,nuget库,npm库(上传jar包可以自动检测版本号)_第9张图片
6、uploadNugetPac.bat脚本文件需放到需要上传的nuget包的目录下,双击即可上传
注意:若nuget.exe不是全局安装,则需在nuget.exe目录下进行上传文件

萌新一枚,有错误希望大佬们指正出来,谢谢

你可能感兴趣的:(maven,nexus,私服,nexus,私服)