建设部网站安徽网站建设

山东金典书业有限公司 2026/09/09 18:09:41

最近折腾jitpack发布,发现他对于项目结构要求比较严格。基本标配就是一个library目录加app,和settings.gradle,gradle这样的配置才行。多模块或者没有模块都比较麻烦。而且之前我遇到过一次,编译等了足足8个小时。

今天研究了mavenCentral,借助神迹github插件,现在已经十分轻松,而且很方便在android studio中操作。直接推荐。

1. 注册

central.sonatype
推荐直接使用github登录即可。官方推荐使用github,能分担他们的服务压力。

2. namespaces

检查是否有Namespaces, 如图:
没有的话,点击Register New Namespace创建。
namespace

3. UserName和Password

登录 Sonatype Central Portal

点击右上角用户头像 →View User Tokens

进入Generate User Token

记录生成的usernamepassword,保存好,后续不可见,后面使用1️⃣。

4. GPG

# 安装 GPG brew install gnupg # 安装 pinentry-mac(用于密码输入) brew install pinentry-mac # 验证安装 gpg --version

也可以选择,自己下载:下载地址

安装完成后在控制台输入gpg --version,即可查看版本号。

生成gpg密钥对:

# 生成密钥(推荐使用 RSA 4096) gpg --full-generate-key

操作(这里最后的passphrase密码,后面有用2️⃣):

请选择您要使用的密钥类型: (1) RSA 和 RSA (2) DSA 和 Elgamal (3) DSA(仅用于签名) (4) RSA(仅用于签名) (9) ECC(签名和加密) (10) ECC(仅用于签名) 您的选择是? 1 RSA 密钥的长度应在 1024 位与 4096 位之间。 您想要使用的密钥长度?(3072) 4096 请设定这个密钥的有效期限。 0 = 密钥永不过期 密钥的有效期限是?(0) 0 真实姓名: Your Name 电子邮件地址: your-email@example.com 注释: Maven Central Deploy Key # 设置一个强密码(passphrase),后续需要使用

查看(丢失了可以重复查看,后面有用3️⃣):

# 列出所有密钥 gpg --list-keys # 列出私钥及 keygrip(用于免密配置) gpg --list-secret-keys --keyid-format LONG ### 输出结果: ---------------------------------- pub rsa4096/123213131423 2026-01-01 [SC] xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxABCD1234 uid [ultimate] Your Name <your-email@example.com> sub rsa4096/XXXXXXXXXXXXXXXX 2026-01-01 [E]

上传到公开的密钥服务器(任一成功即可) :

gpg --keyserver keys.openpgp.org --send-keys xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxABCD1234 gpg --keyserver pgp.mit.edu --send-keys xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxABCD1234 gpg --keyserver keyserver.ubuntu.com --send-keys xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxABCD1234

导出(后面有用4️⃣):

gpg --export-secret-keys -o /Documents/xxx/xxx/secring.gpg

5. 配置属性

接下来,完形填空。创建配置文件,并添加上面操作的:1️⃣,2️⃣,3️⃣,4️⃣。其中3️⃣ 这个ID,注意只要最后的8位

touch ~/.gradle/gradle.properties # 1️⃣ mavenCentralUsername=2xxxXx mavenCentralPassword=Sf111111xxxxdxxxxdddxxxK # 2️⃣ signing.password=xxxx # 3️⃣ signing.keyId=abcd1234 # 4️⃣ signing.secretKeyRingFile=/Users/xxx/XXX/secring.gpg

6. 集成模块插件

直接在module的build.gradle中集成:

plugins{...id("com.vanniktech.maven.publish")version"0.35.0"}mavenPublishing{publishToMavenCentral()signAllPublications()}mavenPublishing{coordinates("com.example.mylibrary","library-name","1.0.3")pom{name="My Library"description="A description of what my library does."inceptionYear="2026"url="https://github.com/username/mylibrary/"licenses{license{name="The Apache License, Version 2.0"url="http://www.apache.org/licenses/LICENSE-2.0.txt"distribution="http://www.apache.org/licenses/LICENSE-2.0.txt"}}developers{developer{id="username"name="User Name"url="https://github.com/username/"}}scm{url="https://github.com/username/mylibrary/"connection="scm:git:git://github.com/username/mylibrary.git"developerConnection="scm:git:ssh://git@github.com/username/mylibrary.git"}}}

多个模块的时候,复制这些到其他子模块。修改其他的配置version,name等模块信息。

7. 发布

然后选择模块下的publishToMavenCentral,点击。你不用编译,他自己会编译。

注意这个时候,还没有发布:

再上到publishing。点击发布:

左边变成了· PUBLISHING状态。
等待几分钟。发布成功!

另外

建议在开发中,不要每次有一点修改就去发布。这样白费时间。错了还得修改。在前面发布的时候,不要急着publishToMavenCentral,而是先publishToMavenLocal()

在使用模块的项目中:
配置根目录settings.gradle:
添加本地mavenLocal()和一些镜像站:

dependencyResolutionManagement{repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)repositories{mavenLocal()//追加一个本地查找maven{url'https://maven.aliyun.com/repository/public'}maven{url'https://maven.aliyun.com/repository/google'}maven{url'https://maven.aliyun.com/repository/central'}maven{url'https://repo.huaweicloud.com/repository/maven/'}maven{url'https://mirrors.cloud.tencent.com/nexus/repository/maven-public/'}maven{url'https://mirrors.163.com/maven/repository/maven-public/'}google()mavenCentral()maven{url'https://www.jitpack.io'}}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

开县网站建设福州网站建设

ClamAV 杀毒软件配置、测试与邮件过滤全解析1. ClamAV 配置优化为了减少网络流量开销并确保从地理位置较近的服务器获取更新,我们需要进行一些重要的配置。以下是关键配置项:# database

2026/06/30 11:24:25

万州网站建设中山网站建设

洛雪音乐六音音源完美修复指南:3步解决播放问题【免费下载链接】New_lxmusic_source六音音源修复版项目地址: https://gitcode.com/gh_mirrors/

2026/06/30 11:52:58

个人网站建设建设网站教程

摘要随着电子商务和物流行业的快速发展,箱包存储管理的需求日益增长。传统的人工管理方式效率低下,容易出现数据丢失或错乱的问题,难以满足现代企业对高效、精准管理的

2026/06/30 11:03:23

中国建设银行网站塘沽网站建设

Arduino IDE 2.0嵌入式开发工具终极指南:快速掌握免费编程利器【免费下载链接】arduino-ideArduino IDE 2.x项目地址: https://gitcode.

2026/06/30 10:34:20

房地产网站建设网站建设书

目录已开发项目效果实现截图开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!已开发项目效果实现截图同行可拿货,招

2026/06/30 12:19:00

郑州网站建设网站建设案例

计算机毕业设计问卷调查信息管理系统20vzg9 (配套有源码 程序 mysql数据库 论文)本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码

2026/06/30 13:00:34

怎么建设网站上海门户网站建设

还在为复杂的命令行工具头疼吗?每次遇到M3U8格式的视频链接就束手无策?今天我要向大家推荐一款真正适合普通用户的M3U8视频下载神器——N_m3u8DL-CLI-Simpl

2026/06/30 11:58:58

黄石网站建设广东网站建设

本课题聚焦见山茶食酒馆线下运营局限、文化传播不足、客户管理低效及线上服务缺失等痛点,设计并实现一款基于Java+SpringBoot的见山茶食酒馆网站系统,搭建“文

2026/06/30 12:03:59

福州网站建设宝安网站建设

LangChain 表达式语言(LCEL)的推出,标志着 AI 应用开发从“脚本时代”进入了“声明式编排时代”。很多人初看 LCEL,以为它只是

2026/06/30 11:28:25