-
Email: 邮箱帐号,在 Sonatype 上的相关操作,会通知到这个邮箱帐号
-
Full name: 填写联系人名称
-
Username: Sonatype 的登录帐号
-
Password: 登录密码,要求至少8位,并带有大小写字母和字符
/ 创建Project工单 /注册完成后,就可以进行登录了,登录进去后,可以发现,他其实是一个JIRA系统,在这个系统中,我们需要创建一个Ticket,用来申请我们自己的Group Id,这个Group Id熟悉maven的应该都了解,可以看成我们自己库的顶级域名,可以用它来和artifactId以及version组合,简称GAV,来定位到我们的某个版本的资源。点击Create来创建一个Ticket
-
Project: 选择 Community Support - Open Source Project
-
Repository Hosting (OSSRH)
-
Issue Type: 选择 New Project
-
Summary: 可填写jar 包名称
-
Description: 描述信息
-
Group Id: Group Id的命名规则为一个域名的反向名称,,可以采用io.github.[username]的方式,比如我上面填写的io.github.xiaozeiqwe8。
-
这边可填写的内容会有2种选择,一种是使用自己的域名,另一种就像我上面填写的那样,使用github仓库地址,这里推荐使用自己的github仓库地址作为Group Id,因为这个会影响到后面工作人员要求验证的方式的不同,验证起来会方便些。
-
另外,如果使用的是github地址,需要注意的是需要使用io.github而不是com.github,如果你是用com,工作人员会要求你修改,并会附上这个文档让你查看原因https://central.sonatype.org/changelog/#2021-04-01-comgithub-is-not-supported-anymore-as-a-valid-coordinate
-
Project URL: 项目地址,可以是github仓库地址,也可以是官网地址
-
SCM URL: 项目的 Git 地址
填写完成这些信息后,就可以create了,create完成后,你的单子会自动assign给工作人员
/ 开通仓库 /工作人员会根据你填写的GroupId的方式,来要求你配合完成一些验证,会在comments里面回复你,在这边,我只说明github的验证方式,域名方式则可自行百度查看验证方式。
然后要求我们在自己的github账号里创建一个public的名称为你这个Ticket的repository,很简单,直接创建一个,注意 Repository名称以及权限是public即可
这样就完成了,然后我们就可以立马去刚刚的Ticket的comments里面告诉工作人员,我们已经完成了这一步
接下来的步骤,我们就是等待了,等待工作人员回复完成即可进行下一步了,我在这一步等待的时间很快,应该不到半小时,至于为什么要等待,可以查看官网的解释https://central.sonatype.org/faq/a-human/
等待到结果会像这样,这时候,我们也不忘谢谢工作人员。到这一步,我们的Maven仓库就已经可以使用了,使用这个地址进行登录https://s01.oss.sonatype.org,用户名密码就是你上面注册的工单系统的账密,接下来我们就可以准备我们需要上传的库了。
创建密钥
到这里就可以从郭神的这里开始看了
因为郭神使用的这个框架更简单的:
https://github.com/vanniktech/gradle-maven-publish-plugin
之后基本都可以发布成功。
那么之后如果你的库写了新的版本怎么更新呢?这里补充一下
如果更新或者上传的过程中出现了一些问题呢?这里补充一下
更新的话,就修改下gradle.properties中的VERSION_NAME版本号后重新publish,close,release即可。
问题汇总
回顾打包流程:(Android Studio左下角选择Gradle -> 切换到对应module的Tasks->pushlishing->publish)
1.打包上传没有Tasks选项的情况
Android Studio 4.2+ task默认是关闭的。Settings - Experimental - 取消勾选 “Do not build Gradle task list during Gradle sync” - 然后重新sync一次,你就能看到Tasks了。
**2.当你在Android Studio中打包aar并上传的时候,可能出现这个错误:
Direct local .aar file dependencies are not supported when building an AAR**.
那么此时如果你的第三方包里面的aar不重要可以删除,那么你可以把它们都删除以后再打包
那么或者也可以把aar的后缀改为zip,然后解压,提取里面的jar包和so文件也可以(前提是里面的res你都不需要)。
**3.如果你的工程里面有aar并且打包没报错,那么可能会出现无法依赖的问题,比如:
Missing required attribute: dependency groupId POM**,可以看这里
**4.本地打包上传没问题了,也上传到https://s01.oss.sonatype.org/#stagingRepositories 这里了
此时你需要close并且release,问题来了,你close失败了**,为什么会失败呢?原因可以在这里查看:
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
总结
最后为了帮助大家深刻理解Android相关知识点的原理以及面试相关知识,这里放上相关的我搜集整理的24套腾讯、字节跳动、阿里、百度2019-2021面试真题解析,我把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包知识脉络 + 诸多细节。
还有 高级架构技术进阶脑图、Android开发面试专题资料 帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
2021年虽然路途坎坷,都在说Android要没落,但是,不要慌,做自己的计划,学自己的习,竞争无处不在,每个行业都是如此。相信自己,没有做不到的,只有想不到的。祝大家2021年万事大吉。文章来源:https://www.toymoban.com/news/detail-851683.html
大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
2021年虽然路途坎坷,都在说Android要没落,但是,不要慌,做自己的计划,学自己的习,竞争无处不在,每个行业都是如此。相信自己,没有做不到的,只有想不到的。祝大家2021年万事大吉。
本文已被CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》收录文章来源地址https://www.toymoban.com/news/detail-851683.html
到了这里,关于Android 开源库发布到MavenCentral,jitpack (gradle-maven-publish-plugin(1)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!