本地JAR包如何上传私有仓库
2024-09-08 15:06:11
需求背景
有些第三方的jar包需要手动上传到maven私有仓库,以便通过maven来管理依赖.
为简化手动上传的jar包的操作步骤,所以整了个脚本,在使用时只需修改相应变量即可。
脚本示例
#!/bin/bash
jarFile="test.jar"
groupId="com.wywtime"
artifactId="test"
version="1.0.0"
# 私有仓库地址
mvn_repository="http://localhost:12345/repository/lib"
# 将点转化为斜杠
path=`echo ${groupId} | sed "s/\./\//g"`
# 动态生成pom文件
cat > ${artifactId}-${version}.pom <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>${groupId}</groupId>
<artifactId>${artifactId}</artifactId>
<version>${version}</version>
</project>
EOF
# 上传jar文件
curl -u "admin:admin" -X PUT -v -T ${jarFile} ${mvn_repository}/${path}/${artifactId}/${version}/${artifactId}-${version}.jar
# 上传pom文件
curl -u "admin:admin" -X PUT -v -T ${artifactId}-${version}.pom ${mvn_repository}/${path}/${artifactId}/${version}/${artifactId}-${version}.pom
# 删除动态生成的pom
rm -rf ${artifactId}-${version}.pom
最新文章
- GC使用注意
- 从express源码中探析其路由机制
- 005医疗项目-模块一:用户的查找:1.用户表查询的sql语句
- MySQL复制-设置延迟复制
- 锋利的jQuery读书笔记---jQuery中Ajax--get、post等方法
- js获取url及url参数的方法
- Android开发实例-健康食谱应用(一)
- php 解析url 和parse_url使用
- BestCoder Round #86 A B C
- ORACLE中关于外键缺少索引的探讨和总结
- Linux 基础(2)
- python函数高级特性
- mybatis_helloworld(2)_源码
- debug 2
- CDH 报错:UnicodeEncodeError: &#39;ascii&#39; codec can&#39;t encode characters in position 0-11: ordinal not in range
- snakemake使用笔记
- vue搭配axios踩坑
- [EWS]查找 文件夹
- python difflib.md
- [苹果]苹果AppStore应用审核标准
热门文章
- nginx部署+将安装包打包到requirements.txt文件中
- 你有了解过无服务器架构(Serverless)数据库吗?
- wandb: Network error (ConnectionError), entering retry loop.
- ES6判断对象是否为空
- 【1】第一篇 Postman的初级使用之设置环境快速切换生成环境与测试环境
- pnpm 中无法使用 patch-package 打补丁
- go+redis实现消息队列发布与订阅
- 两步解决php超时问题
- 01_windows、linux互ping不通解决方式
- 2022-05-06内部群每日三题-清辉PMP