上传jar包到maven中央仓库过程中遇到的一些问题总结!
网上有很多相关教程, 我按步骤一步步走下来, 都还算顺利, 简单列举一下步骤以及其中需要注意的几个点(不详细, 不适合当教程)
第一步: 到https://issues.sonatype.org/secure/Dashboard.jspa注册账户并提交一个工单,表示要创建一个个人groupId
此过程中需要注意的几个点:
a) 管理员跟我们有时差, 我们白天提交, 晚上他们才会审核
b) groupId 规则是 一个域名的反写, 如 2oi7.com , 则groupId为 com.2oi7 , 使用自己的域名作为groupId 需要提交所属证明, 比如自己的域名列表截图, 或者注册成功的邮件等, 事先提交就好, 不然等第二天提交的时候, 管理员又在呼呼大睡了!
c) 如果自己没有域名可以 使用 自己的 github 或 gitee 主页地址, 也就是2级域名, 这个也要跟管理员说明情况, 不然他还得问你是不是这个域名的主人
第二步: 下载安装GPG
第三步: 修改maven的 settings.xml 配置, 加上两个<server>节点
此过程中需要注意的几个点:
a) 这里的 id 注意不要打错字了!, 一个是 sonatype-nexus-snapshots , 另一个是 sonatype-nexus-staging , 否则后面部署的时候会出现授权不通过
第四步: 修改自己项目的pom.xml 文件, 加入一些必要的信息(项目地址, 开发者等), 继承官方 oss-parent 的pom可以省去很多配置
第五步: 在项目根目录执行 mvn clean deploy -P sonatype-oss-release -Darguments=`gpg.passphrase=GPG密码` -X 期间可能需要按一下 enter 和 输入gpg密码
此过程中需要注意的几个点:
a) 项目的版本号不能以 SNAPSHOT 结尾, 否则部署以后无法在 Staging Repositories 找到, 我在这里卡了一天, 网上找不到答案, 最后是问了管理员
b) mvn命令最后加一个 -X 可以输出详细信息, 遇到报错的时候挺有用的
c) 部署的项目 groupId 必须与提交工单的 groupId一直, 否则将无法发布
第六步: 运行命令 `gpg --keyserver hkp://keyserver.ubuntu.com:11371 --send-keys 自己的GPG密钥` 密钥可以通过命令 `gpg --list-keys` 查看
第七步: 到 https://oss.sonatype.org/#stagingRepositories 登入后直接看最下面, 找到自己上传的项目, 选中后左上角close -> 左上角刷新 -> 选中后左上角 release, 如果没问题到这里就ok了
a) 发布成功后, 自己的工单最后会有一个新消息, 提示已经发布成功
b) 一般10分钟内同步到中央仓库并供外网依赖下载, 2个小时左右可以在 maven搜索页中搜索到, 我现在3个小时, 已经可以正常依赖使用, 但是搜索还搜不到, 但是搜索不重要, 能用就可以了
上传jar包到maven中央仓库过程中遇到的一些问题总结!的更多相关文章
- maven插件上传本地jar包到maven中央仓库
settings配置(如果设置后有问题,可以重启idea,保证重新加载settings文件): <!-- 上传jar包到maven中央仓库配置start --> <server> ...
- 如何发布jar包到maven中央仓库
自使用maven以来,没少使用maven中央仓库中的各种jar包,方便有效,但是咱们也不能总是只取不予,也应该懂得奉献,当你写好了一个十分好用的jar包,想贡献出去给大家使用的时候,应该怎么做呢?当然 ...
- 如何发布自己的 jar 包到 maven 中央仓库(待更新...)
参考链接 如何发布自己的 jar 包到 maven 中央仓库
- gradle上传jar包到maven公共仓库
首先这里说的中央仓库 是指的 https://issues.sonatype.org/ 而不是maven私服. 其次是使用gradle上传jar包,maven上传,网上有很多教程,这里不做赘述. 首选 ...
- 发布Jar包到maven中央仓库
什么是maven中央仓库 maven是java世界最流行的构建工具,构建内容囊括了一个java项目的整个生命周期.其中最重要的功能就是依赖管理,maven通过一个类似云的ftp站点统一管理所有java ...
- 一份可以发布jar包到MAVEN中央仓库的POM
[2017-01-03 更新]将基础的pom抽离成一个项目无关的parent pom,euler-framework的pom继承这个parent pom 今天在家折腾了一下怎么把Jar包发布到Mave ...
- 上传jar包至maven私服
1.maven环境变量配置(新建系统变量,编辑Path) 2.修改maven的setting文件 2.1 私服的用户配置 2.2 私服镜像配置 2.3 (我也不知道是啥) <profile> ...
- Maven第四篇【私有仓库、上传jar包、引用私服jar包、上传本地项目到私服】
搭建私有服务器 前面已经说过了,我们使用Maven的使用,如果需要导入相对应的jar包,Maven首先会在我们的本地仓库中寻找->私有仓库->中心仓库- 然而,我们的本地仓库常常没有想要的 ...
- 实测Maven上传jar包到私服的方法归纳
Hello,各位小伙伴大家好,我是小栈君.好久不见,最近因为工作的缘故,导致了更新变慢,但是小栈君也在积极的做素材的规划,毕竟学习知识点的归纳和提炼需要一定的时间. 所以还请大家多多见谅,下一期的分享 ...
随机推荐
- Linux 学习 (五) 压缩与解压缩命令
Linux达人养成计划 I 学习笔记 常用压缩格式:.zip | .gz | .bz2 | .tar.gz | .tar.bz2 .zip zip 压缩文件名 源文件:压缩文件 zip -r 压缩文件 ...
- poj-3281(拆点+最大流)
题意:有n头牛,f种食物,d种饮料,每头牛有自己喜欢的食物和饮料,问你最多能够几头牛搭配好,每种食物或者饮料只能一头牛享用: 解题思路:把牛拆点,因为流过牛的流量是由限制的,只能为1,然后,食物和牛的 ...
- Python future使用
Python的每个新版本都会增加一些新的功能,或者对原来的功能作一些改动.有些改动是不兼容旧版本的,也就是在当前版本运行正常的代码,到下一个版本运行就可能不正常了. 从Python 2.7到Pytho ...
- [OI]Noip 2018总结(普及)
考砸了,还有原谅我代码十分有限的可读性. 一个人的真正伟大之处就在于他能够认识到自己的渺小.——保罗 从一年前初一九月到现在18年10月接触OI已经有一年了.几次模拟赛也自我感觉良好,都过了一等的线, ...
- Magento2 可配置产品解决SKU流程
选择可配置产品: 填写必填信息与库存 创建配置 执行四步后完成创建:4.1:选择需要的规格属性: 4.2:选择组合需要的属性值:4.3:根据您的选择,将创建3个新产品.使用此步骤自定义新产品的图像和价 ...
- 学习python第二天
编程语言分为哪几种? 1. 机器语言:是通过直接编写二进制指令对计算机下达指令的编程方式 -- 0000,0000,00000000001:加载 暂存区A 存储器地址1 2. 汇编语言:是通过编写二进 ...
- Vue的指令系统、计算属性和表单输入绑定
指令系统 指令 (Directives) 是带有 v- 前缀的特殊特性.指令特性的值预期是单个 JavaScript 表达式 (v-for 是例外情况,稍后我们再讨论).指令的职责是,当表达式的值改变 ...
- elk中fliebeat的配置文件
fliebeat----> kafka的配置文件 # cat filebeat.yml|egrep -v "^$|^#"|grep -v "^ #" fi ...
- 第十二节:Lambda、linq、SQL的相爱相杀(1)
一. 谈情怀 Lambda.Linq.SQL伴随着我的开发一年又一年,但它们三者并没有此消彼长,各自占有这一定的比重,起着不可替代的作用. 相信我们最先接触的应该就是SQL了,凡是科班出身的人,大学 ...
- 携程apollo系列-客户端集成
本文讲解如何在 Java 程序中集成 Apollo 配置, 主要涉及到一些基础用法. 对于一些高级用法, 比如如何加密/解密配置项 (可用于数据库密码配置), 如何动态切换数据源地址,如何动态切换日志 ...