需求背景

有些第三方的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

最新文章

  1. GC使用注意
  2. 从express源码中探析其路由机制
  3. 005医疗项目-模块一:用户的查找:1.用户表查询的sql语句
  4. MySQL复制-设置延迟复制
  5. 锋利的jQuery读书笔记---jQuery中Ajax--get、post等方法
  6. js获取url及url参数的方法
  7. Android开发实例-健康食谱应用(一)
  8. php 解析url 和parse_url使用
  9. BestCoder Round #86 A B C
  10. ORACLE中关于外键缺少索引的探讨和总结
  11. Linux 基础(2)
  12. python函数高级特性
  13. mybatis_helloworld(2)_源码
  14. debug 2
  15. CDH 报错:UnicodeEncodeError: &#39;ascii&#39; codec can&#39;t encode characters in position 0-11: ordinal not in range
  16. snakemake使用笔记
  17. vue搭配axios踩坑
  18. [EWS]查找 文件夹
  19. python difflib.md
  20. [苹果]苹果AppStore应用审核标准

热门文章

  1. nginx部署+将安装包打包到requirements.txt文件中
  2. 你有了解过无服务器架构(Serverless)数据库吗?
  3. wandb: Network error (ConnectionError), entering retry loop.
  4. ES6判断对象是否为空
  5. 【1】第一篇 Postman的初级使用之设置环境快速切换生成环境与测试环境
  6. pnpm 中无法使用 patch-package 打补丁
  7. go+redis实现消息队列发布与订阅
  8. 两步解决php超时问题
  9. 01_windows、linux互ping不通解决方式
  10. 2022-05-06内部群每日三题-清辉PMP