当前位置:   article > 正文

Maven 私服手动批量上传jar包_maven批量上传jar到私仓

maven批量上传jar到私仓

此方法适用于 本地jar包文件结构完整的情况。

完整结构如下:

jar包名称
image-20211106133155595

版本
image-20211106133230006

jar
image-20211106133341233

一、在服务器opt目录下创建一个名为localrepository文件夹

mkdir localrepository
  • 1

二、通过 Xftp 或其他传输工具将 本地Maven仓库中要上传的包 上传到服务器中上一步创建的文件夹内

三、编写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}/{} ;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

四、对编写的脚本进行赋权

chmod a+x mavenimport.sh


#意思是给所有的用户添加执行 mavenimport.sh 这个文件的权限
# chmod  是添加更改权限命令
# a是指所有的用户组,包括root用户组,文件拥有者的用户组,还有其他用户组。
# +x是指添加执行权限。
# +x是执行权限,+r是阅读权限,+w是写入权限
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

五、执行导入命令

./mavenimport.sh -u admin -p admin123 -r http://ip:8081/repository/maven-releases/
  • 1

在实际学习或工作环境中,还可能会遇到jar包目录结构不完整的情况,这时需要对jar包进行规范化处理

  1. cd到要转化的jar包目录
  2. cmd通过mvn进行操作

demo-biz.jar为例:

image-20211106135459426

mvn install:install-file -DgroupId=com.zhgc -DartifactId=demo-biz -Dversion=1.0.0 -Dpackaging=jar -Dfile=demo-biz.jar
  • 1
  • DgroupId对应pom文件中dependency中的groupId
  • DartifactId定义artifactId
  • Dversion定义版本号
  • Dpackaging选择要转化的本地jar包

image-20211106135536980

出现 BUILD SUCCESS 即为构建成功

处理完之后,使用开篇的方法,上传jar包到私服

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号