【工具利器】Maven私服使用指南:单个依赖上传和批量上传

在使用Maven私服时,我们经常需要将项目的依赖文件上传到私服中,以供其他项目进行引用和下载。本文将介绍如何使用Maven私服进行单个依赖上传和批量上传。

使用Maven私服进行依赖上传是一种方便管理和共享依赖的方式。单个依赖上传可以手动填写相关信息并上传,而批量上传需要编写脚本并执行。无论是单个上传还是批量上传,都能够提高项目的开发效率和依赖管理的便利性。

1.1、单个依赖上传

当我们需要上传单个依赖文件但没有pom文件时,我们可以手动填写Group ID、Artifact ID、Version来上传。在私服的界面中,找到文件上传的入口,选择单个依赖文件并填写相应的信息,然后点击上传按钮即可完成单个依赖的上传。如上传文件自带pom一般不需要手动填写信息

1.2、批量上传依赖

批量上传依赖可以提高效率,特别是当我们需要上传大量依赖文件时。以下是批量上传依赖的步骤:

  1. 选择Maven Host模式仓库:在私服中选择Maven Host模式的仓库,以便进行批量上传。

  2. 设置布局策略与部署策略:在私服的设置中,配置好布局策略和部署策略,确保设置的URL能够在批量上传时使用。

  3. 编写脚本:创建一个名为mavenimport.sh的脚本文件,该脚本将用于批量上传依赖。这个脚本会自动排除自身并上传其他文件。

sh 复制代码
#!/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. 执行脚本:将mavenimport.sh脚本放在上传依赖文件的根目录下,然后在命令行中执行脚本。根据实际情况,指定私服的URL、用户名和密码参数,执行脚本即可完成批量上传。
  2. 在windows目录下执行脚本,使用git命令窗口就行了
sh 复制代码
 ./mavenimport.sh -u username -p password -r http://ip:port/repository/public-hosted/
  1. 上传效果如下:

通过以上步骤,您可以方便地将单个依赖和批量依赖上传到Maven私服中,以供其他项目使用和引用。

相关推荐
论迹复利1 小时前
FreeRTOS 在 RISC-V 上是如何“点火“的 —— 从 main() 到第一个任务的完整链路
java·开发语言·risc-v
张宇Joaquin2 小时前
鲲鹏统一并行加速库KUPL--众核并行能力介绍
java·开发语言·网络
宸津-代码粉碎机2 小时前
AI攻防战升级!基于Spring AI构建Java应用自动免疫安全体系
java·大数据·开发语言·人工智能·python·安全·spring
倔强的石头_3 小时前
连接数失控排查:从数据库会话、应用线程池到连接池泄漏
数据库
hzxpaipai3 小时前
企业官网技术架构拆解:前端、后台、数据库、服务器如何协同
前端·数据库·架构
2601_963749103 小时前
越华环保集团数字化污水治理:端边云采集架构与平台对接实现
java·大数据·架构
xcLeigh4 小时前
Go入门:整数类型的溢出与安全边界
java·安全·golang
爱吃火鸡面呀4 小时前
MySQL DQL 子查询详解:从标量、列、行到表子查询的完整实战
大数据·数据库·mysql
源码宝4 小时前
SpringBoot+Vue2 诊所门诊管理系统,完整前后端源码,可直接部署上线
java·源码·his系统·门诊系统·程序代码·诊所系统·门诊his
yychen_java4 小时前
九:Text-to-SQL 智能数据查询与 Human-in-the-Loop 人机协作
java·人工智能·架构