2024.07使用gradle上传maven组件到central.sonatype,非常简单

news/2024/7/8 6:24:31 标签: maven, java, sonatype

sonatype Uploader 2.6新版本传送门


本文基于sonatypeUploader2.0版本

在1.0版本我们还需要手动去添加maven-publishsigning插件,在2.0版本他已经内置了,如果你仍然需要手动配置,你可以手动添加这两个插件及逻辑。

具体信息参考开源仓库:

  • 插件仓库:https://github.com/jeadyx/SonatypeUploader
  • 插件的使用范例:https://github.com/jeadyx/SonatypeUploaderSample

发布步骤

  1. 默认你已经有了sonatype账号并拥有了一个合法的nameSpace; 并且生成了usertoken
    注:如果没有,请参考1.0博文的生成步骤: 传送门

  2. 导入插件

plugins { 
    id("org.jetbrains.dokka") version "1.9.20" // kotlin代码生成javadoc的插件,不需要的话可以注释掉
    id("io.github.jeadyx.sonatype-uploader") version "2.3"
}
  1. 配置插件信息
// 以`io.github.jeady5:$moduleName:1.0`为例
group = "io.github.jeady5"
version = "1.0"
sonatypeUploader {
   tokenName = "tokenUser"
   tokenPasswd = "tokenUserPasswd"
   pom = Action<MavenPom>{
       name = "My Library"
       description = "A concise description of my library greennbg"
       url = "http://www.example.com/library"
       licenses {
           license {
               name = "The Apache License, Version 2.0"
               url = "http://www.apache.org/licenses/LICENSE-2.0.txt"
           }
       }
       developers {
           developer {
               id = "jeady"
               name = "jeady"
               email = "jeady@example.com"
           }
       }
       scm {
           connection = "scm:git:git://example.com/my-library.git"
           developerConnection = "scm:git:ssh://example.com/my-library.git"
           url = "http://example.com/my-library/"
       }
   }
}
  1. sync项目
  2. gradle publishToSonatype

附: 同步后会生成5个任务
在这里插入图片描述

  • 0.testDeploymentDir
    在本地生成要上传的工件目录,位置在模块的build\sonayUploader目录里面
  • 1.uploadDeploymentDir
    上传刚生成的目录到sonatype 中心仓库
  • 2.checkDeploymentStatus
    上传的目录会进行合法性验证,此任务将返回校验状态,只有验证通过的才能发布,否则只能删除;
    要想知道具体失败原因,参考:https://central.sonatype.com/publishing/deployments
  • 3.deleteDeployment
    删除刚上传的工件
  • 4.publishDeployment
    发布刚上传的工件,不可取消
  • cleanLocalDeploymentDir
    删除本地生成的临时工件目录
  • uploadToSonatype
    一键发布

后记

如果对你有帮助,请star仓库:SonatypeUploader

如果有什么问题,请提交issure


http://www.niftyadmin.cn/n/5536734.html

相关文章

iCloud照片库全指南:云端存储与智能管理

iCloud照片库全指南&#xff1a;云端存储与智能管理 在数字化时代&#xff0c;照片和视频成为了我们生活中不可或缺的一部分。随着手机摄像头质量的提升&#xff0c;我们记录生活点滴的方式也越来越丰富。然而&#xff0c;这也带来了一个问题&#xff1a;如何有效管理和存储日…

从硬件角度看Linux的内存管理

1. 分页机制 分段机制的地址映射颗粒度太大&#xff0c;以整个进程地址空间为单位的分配方式导致内存利用率不高。 分页机制把这个分配机制的单位继续细化为固定大小的页(Page)&#xff0c;进程的虚拟地址空间也按照页来分割&#xff0c;这样常用的数据和代码就可以以页为单位…

Oracle PL / SQL 存储过程

PL / SQL存储过程不返回值。他们执行他们的指示并返回。您不能在赋值语句&#xff08;如函数&#xff09;的右侧使用存储过程。 创建存储过程 以下代码是一个非常简单的存储过程示例。 它基于SYS.DBMS_LOCK包的程序sleep&#xff08;数量&#xff09;。 此存储过程将停止执行…

【AI原理解析】—k-means原理

目录 步骤 注意事项 优点 缺点 步骤 初始化&#xff1a; 选择 k 个初始质心&#xff08;通常通过随机选择数据集中的 k 个点作为初始质心&#xff09;。迭代过程&#xff1a; 分配数据点到最近的质心&#xff1a; 对于数据集中的每个数据点&#xff0c;计算它与 k 个质心之…

【C语言入门】初识C语言:掌握编程的基石

&#x1f4dd;个人主页&#x1f339;&#xff1a;Eternity._ ⏩收录专栏⏪&#xff1a;C语言 “ 登神长阶 ” &#x1f921;往期回顾&#x1f921;&#xff1a;C语言入门 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; ❀C语言入门 &#x1f4d2;1. 选择…

FPGA基本资源介绍

文章目录 FPGA资源介绍1.可编程输入输出单元(IOB)2.可配置逻辑块(CLB)3.数字时钟管理模块(DCM)4.嵌入式块RAM(BLOCK RAM / BRAM)4.1其他ram 5.丰富的布线资源6.底层内嵌功能单元7.内嵌专用硬核软核、硬核、以及固核的概念 FPGA资源介绍 1.可编程输入输出单元(IOB) 可编程输入…

引领汽车软件开发走向ASPICE认证之路

亚远景科技与ASPICE认证的关系可以从以下几个方面来阐述&#xff1a; (要明确的是&#xff1a;在ASPICE行业中专业来说&#xff0c;ASPICE项目是没有认证&#xff0c;而只有评估。不过&#xff0c;为了方便沟通&#xff0c;人们常将这一评估过程称为认证。&#xff09; 行业专…

面向6G全域融合的智能接入关键技术综述

源自&#xff1a;电子与信息学报 作者&#xff1a;王雪, 孟姝宇, 钱志鸿 注&#xff1a;若出现无法显示完全的情况&#xff0c;可 V 搜索“人工智能技术与咨询”查看完整文章 摘 要 针对空天地一体化接入网络&#xff0c;该文在总结相关研究的基础上&#xff0c;阐述了…