将jar包导入到指定Nexus仓库

目录

1、统一管理jar包

2、Shell脚本


 运行环境:


1、统一管理jar包

        在什么情况下,需将JAR包进行统一管理?以下对导入到指定Nexus仓库的常见场景进行梳理,包括:

  • ‌‌上传第三方JAR包‌:将本地或第三方JAR包迁移到私服,便于团队协作和版本控制。
  • 统一依赖管理‌:避免因本地环境差异导致构建失败,通过集中管理依赖库提升项目一致性。
  • ‌解决依赖冲突‌:通过Nexus的仓库策略(如:版本控制)避免不同版本的JAR包冲突。
  • 提升构建效率‌:利用Nexus的缓存机制加速构建过程。
  • ‌发布项目构件‌:将构建的JAR包上传到Nexus的Release或Snapshot仓库。
  • 微服务架构开发‌:在分布式系统中,将服务组件上传到Nexus仓库,供其他服务引用。

这些场景下,将JAR包导入Nexus仓库能有效管理依赖关系,提升开发效率和协作性。

2、Shell脚本

在指定目录下创建脚本文件(如:/opt/script/maven-import.sh)

cd /opt/script
touch maven-import.sh

脚本内容:

#!/bin/bash
# ############################################################
# Subject: 将目录下的jar包导入到指定Nexus仓库
#  Author: 狂龙骄子
#    Date: 2023.08.15
#  Remark: 1、授权执行权限 chmod +x maven-import.sh
#          2、脚本以root用户运行
#          3、调用举例:sh maven-import.sh -u 用户名 -p 密码 -r 仓库地址
# ############################################################

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}/{} ;

附录:

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

狂龙骄子

独码乐,不如众码乐,乐享其中

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值