最近自己写了一个关于网关限流的插件,然后想着肯定会有很多兄弟也需要使用到,所以就想着把jar包上传到Maven的中央仓库上让大家可以更方便的使用

现在咱们来看一下这个流程是什么样的呢。

  1. 首先呢,你得去这个网站去注册一个账号https://issues.sonatype.org/secure/Dashboard.jspa
  2. 账号注册以后登录网站,点击上方导航条最显眼的那个create按钮,然后按照下图标示的进行填写信息

    这里有一个小小的坑就是如果你没有域名的话groupId可以写com.github.你的github名或者io.github.你的github名。如果你写域名的话他会让你确认域名是不是你的。大家可以按照我的办法在你的网站做一个简单的转发,转发的地址就是你要上传的项目的github地址。

    另外需要注意的是因为人家上班时间是我们的晚上,所以说如果不想等的时间长的话可以晚上操作。
  3. 当你看到你的项目状态变成了RESOLVED时并且有一条评论是这样的时候你就已经成功了一半了。
  4. 接下来呢,去这个网站https://www.gpg4win.org/下载一个gpg
  5. 在你的Maven的seeting.xml中增加以下配置
1
2
3
4
5
6
7
8
9
10
11
12
<servers>
<server>
<id>sonatype-nexus-snapshots</id>
<username>Sonatype 账号</username>
<password>Sonatype 密码</password>
</server>
<server>
<id>sonatype-nexus-staging</id>
<username>Sonatype 账号</username>
<password>Sonatype 密码</password>
</server>
</servers>

在项目的pom文件中增加配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<name>syj-ratelimit</name>
<description>a project about ratelimit</description>
<url>http://zhixiang.org.cn</url>
<licenses>
<license>
<name>The ApacheSoftware License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<tag>master</tag>
<url>https://github.com/2388386839/syj-ratelimit.git</url>
<connection>scm:git:https://github.com/2388386839/syj-ratelimit.git</connection>
<developerConnection>scm:git:https://github.com/2388386839/syj-ratelimit.git</developerConnection>
</scm>
<developers>
<developer>
<name>ShiYuJun</name>
<email>zxservice@zhixiang.org.cn</email>
<organization>xxx</organization>
</developer>
</developers> <parent>
<groupId>org.sonatype.oss</groupId>
<artifactId>oss-parent</artifactId>
<version>7</version>
</parent>
  1. 在项目中执行命令:gpg --gen-key,在执行命令的时候会让你输入一些信息,按照提示输入就行。记住其中的passphrase就行了。

  2. 然后执行命令 mvn clean deploy -P sonatype-oss-release -Darguments=“gpg.passphrase=刚才让你记住的东西”

  3. 这个时候你的jar包已经上传到了maven的一个仓库,不过别人还不能用。

  4. 这个时候你应该把你刚才用来加密的密钥上传到一个公共的地方供别人来校验

    执行命令 gpg --list-keys
    然后你会看到有一个pub的值,大概是这样的CE2DF6AC
    然后执行下方命令

1
gpg --keyserver hkp://keyserver.ubuntu.com:11371 --send-keys pub CE2DF6AC
  1. 访问地址https://oss.sonatype.org/#stagingRepositories,用你一开始的时候注册的用户名登录。在最下方应该能找到你刚刚提交的jar包。
  2. 选择之后先close,close之后如果没问题的话接着点击release。当然,如果有问题的话可能就是你上传过程中出现了什么问题,如果解决不了欢迎在博客下方提问。
  3. 此时在访问https://issues.sonatype.org/secure/Dashboard.jspa会发现多了一条评论

    现在大功告成。全世界的开发者都可以在maven中引入你的jar包了

欢迎来我的github看一下我的第一个开源项目写的如何https://github.com/shiyujun/syj-ratelimit

本文出自http://zhixiang.org.cn,转载请保留。

如何将自己的jar包发布到mavan中央仓库的更多相关文章

  1. 如何将JAR包发布到Maven中央仓库?

    将jar包发布到Maven中央仓库(Maven Central Repository),这样所有的Java开发者都可以使用Maven直接导入依赖,例如fundebug-java: <!-- ht ...

  2. 将jar包发布到maven中央仓库

    将jar包发布到maven中央仓库 最近做了一个swagger-ui的开源项目,因为是采用vue进行解析swagger-json,需要前端支持,为了后端也能方便的使用此功能,所以将vue项目编译后的结 ...

  3. 贡献你的代码,将jar包发布到Maven中央仓库以及常见错误的解决办法

    前几天将自己的日志工具发布到了Maven中央仓库中.这个工具本省没有多少技术含量,因为是修改别人的源代码实现的,但是将jar发布到Maven仓库却收获颇丰,因为网上有些教程过时了,在此分享下自己发布j ...

  4. Dev 日志 | 如何将 jar 包发布到 Maven 中央仓库

    摘要 Maven 中央仓库并不支持直接上传 jar 包,因此需要将 jar 包发布到一些指定的第三方 Maven 仓库,比如:Sonatype OSSRH 仓库,然后该仓库再将 jar 包同步到 Ma ...

  5. 将自己的项目作为jar包发布到maven中央仓库

    maven版本是3.5.0,jdk是1.8(注意,不是说项目是1.8就行,必须是环境变量里的也是,不能超过1.8,否则一大堆问题,执行mvn前用javac -version看下版本) 一:先在sona ...

  6. 解决Maven本地仓库没有Jar包问题,请求中央仓库自动下载以及手动下载方法

    一.首先指定本地仓库 <localRepository>D:\software\Maven_Home\mvn_repository</localRepository> 二.修改 ...

  7. 将个人项目发布到mavan中央仓库

    第一步,准备自己的git代码 比如在gitee或者github上的代码,我的是gitee码云上的,开源了一个处理业务日志采集的组件,支持注解方式,支持SpEL表达式,支持变量自定义. 话不多说,直接上 ...

  8. 设置将Maven的jar包发布到lib

    2,设置将Maven的jar包发布到lib下. Add -> Java Build Path Entries -> Maven Dependencies -> Finish 设置完成 ...

  9. 将jar包发布到maven的中央仓库细节整理

    在学习springboot框架的时候,会引入各种各样的starter依赖,照着教程尝试写了个demo-spring-boot-stater,可以理解为一个组件,随引随用 但是只能自己引用,无法共享,于 ...

随机推荐

  1. MongoDB设置连接池操作百万级以上数据

    开发环境 spring 4.3.7 + springBoot 1.5.2 + dubbo 2.6.5 + mongoDB 4.0.0 连接池配置 mongo-pool.properties sprin ...

  2. php中使用sphinx搜索引擎

    sphinx是一个高效的搜索引擎,分词搜索的速度比较快,索引建立存储在硬盘文件,不会干扰数据库,有自己内置的一套数据库. 一. 安装.配置 1.ubuntu安装sphinx 如果没有安装aptitud ...

  3. HNの野望

    1.标题 2.工作 3.学习 4.英语 5.健康 6.心理 7.绘画 8.看书

  4. asp.net asp.net application 升级到 asp.net web 解决找不到控件 批量生成.designer文件

    颇费周折后,其实很简单,只需要生成designer文件后,重新保存所有页面即可.就是懒得写.懒真的是一种病,手上不能懒,脑子里更不能懒,否则就是给自己挖坑,仔细认真,注意细节!!!! PS:注意修改p ...

  5. HDU 2196.Computer 树形dp 树的直径

    Computer Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...

  6. Eclipse Maven: Cannot change version of project facet Dynamic web to 3.0 的解决方法

    在 Eclipse 中创建 Maven web 项目的时候使用 maven-artchetype-webapp 骨架,但是这个 catalog 比较老,用的 servlet 还是 2.3 在 Proj ...

  7. C# WPF 父控件通过使用可视化树找到子控件

    在我们使用WPF设计前台界面时,经常会重写数据模板,或者把控件放到数据模板里.但是一旦将控件放到数据模板中,在后台就没有办法通过控件的名字来获取它了,更没办法对它进行操作(例如,隐藏,改变控件的某个值 ...

  8. [C#.net]SqlDataAdapter 执行超时已过期 完成操作之前已超时或服务器未响应

    随着数据库数据的不断增大,查询时间也随之增长.而客户端与数据库连接时间以及命令的执行时间都是有限的.默认为30s.所以在查询数据的时候,程序会出现 “超时时间已到.在操作完成之前超时时间已过或服务器未 ...

  9. 图解HTTP系列

    第一章 第二章 第三章 第四章 第五章 第六章 第七章 第九章 第十章

  10. 【Selenium】【BugList1】调用firefox浏览器,报 TypeError: 'module' object is not callable

    #coding=utf-8 from selenium import webdriver driver=webdriver.firefox() 解决方法:firefox改为Firefox