上传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,各位小伙伴大家好,我是小栈君.好久不见,最近因为工作的缘故,导致了更新变慢,但是小栈君也在积极的做素材的规划,毕竟学习知识点的归纳和提炼需要一定的时间. 所以还请大家多多见谅,下一期的分享 ...
随机推荐
- ReSharper 2017破解详细方法:
VS里面,打开ReSharper的注册窗口:ReSharper ——> Help ——> License Information... Use License Server,右侧加号,点击 ...
- springboot2.0整合shiro出现ShiroDialect报错 找不到org/thymeleaf/processor/attr/AbstractTextChildModifierAttrPr
包版本过低,找最新包 https://mvnrepository.com/ <dependency> <groupId>com.github.theborakompanioni ...
- 关于mysql主从架构master宕机后,请求转移问题解决办法
mysql架构:一主一从 问题一:有两台mysql数据库,已做好主从.如果运行某一天master服务器mysql故障导致前端请求无法处理怎么办? 答:将前端需要数据库处理的请求转移到slave机上. ...
- Hive 执行作业时报错 [ Diagnostics: File file:/ *** reduce.xml does not exist FileNotFoundException: File file:/ ]
2019-03-10 本篇文章旨在阐述本人在某一特定情况下遇到 Hive 执行 MapReduce 作业的问题的探索过程与解决方案.不对文章的完全.绝对正确性负责. 解决方案 Hive 的配置文件 ...
- 第六十三天 js基础
一.JS三个组成部分 ES:ECMAScript语法 DOM:document对象模型=>通过js代码与页面文档(出现在body中的所有可视化标签)进行交互 BOM:borwser对象模型=&g ...
- 打印并输出 log/日志到文件(C++)
#include <stdarg.h> #define MAX_LEN 1024 bool debug_mode; // 使用方法同 printf void lprintf(const c ...
- Codeforces 1077F1 Pictures with Kittens (easy version)(DP)
题目链接:Pictures with Kittens (easy version) 题意:给定n长度的数字序列ai,求从中选出x个满足任意k长度区间都至少有一个被选到的最大和. 题解:$dp[i][j ...
- mysql表加锁、全表加锁、查看加锁、解锁
单个表锁定: 格式: LOCK TABLES tbl_name {READ | WRITE},[ tbl_name {READ | WRITE},……] 例子: lock tables db_a.tb ...
- 无需认证的mail,适用于ZABBIX等运维系统
cat main.cf | grep "^\s[^# \t].$" queue_directory = /var/spool/postfix command_directory = ...
- 计算机网络--差错检测(帧检验序列FCS计算方法)
我们知道数据链路层广泛使用循环冗余检验CRC的检验技术 现在我们知道要发送的数据M=101001(长度为k=6) 在我们每次发送数据的时候需要在M后面添加一个N位的冗余码,一共发送(k+N)位数据 ...