参考:清晰的教你如何将 Maven 项目上传至 中央仓库以及版本更新
项目中总会依赖一些大牛的开源库,例如 AndroID 开发 通过以下方式就可以方便的引入库。那么如何将我们自己的库也能这样来使用呢?下面我们将详细的讲解实现这一库加载的每一步的过程:
implementation 'io.github.meetsl:SCardVIEw:1.0'
通过 sonatype 把你的开源库提交到Maven的中心库注册一个sonatype账号注册GitHub账号创建开源仓库-SCardVIEw新建一个类型为Community Support - Open Source Project Repository Hosting (OSSRH)的项目创建完毕后就等待审核(晚上审核)。当状态变为“resolved”,然后你就可以使用Gradle上传项目了。或者就等着接收 sonatype 的反馈邮件,确认已经为你创建好了新项目。上传项目到 Maven 中心仓库
示例项目是一个 AndroID 项目,所以通过在开源库的 libray Module 下的 build.gradle 末尾添加如下配置:
apply plugin: 'maven'apply plugin: 'signing'signing { sign configurations.archives}group = "io.github.meetsl"archivesBasename = "SCardVIEw"version = "1.0"uploadArchives { repositorIEs { mavendeployer { beforedeployment { Mavendeployment deployment -> signing.signPom(deployment) } repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") { authentication(username: ossrhUsername, password: ossrhPassword) } snapshotRepository(url: "https://oss.sonatype.org/content/repositorIEs/snapshots/") { authentication(username: ossrhUsername, password: ossrhPassword) } pom.project { name 'SCardVIEw' packaging 'aar' description 'This is a vIEw that is similar to the CardVIEw of Google ,but it can change the position of shadow and the shadow color of it . ' url 'https://github.com/meetsl/SCardVIEw-master' scm { connection 'scm:git:https://github.com/meetsl/SCardVIEw-master.git' developerConnection 'scm:git:https://github.com/meetsl/SCardVIEw-master.git' url 'https://github.com/meetsl/SCardVIEw-master.git' } licenses { license { name 'The Apache license, Version 2.0' url 'http://www.apache.org/licenses/liCENSE-2.0.txt' } } developers { developer { ID 'xxxxxx' name 'xxxxxx' email 'xxxxxxxx.com' } } } } }}
在上面的代码中,大家请将根域中的 group , archiveBasename , version 以及 uploadArchives#pom.project 中的相关描述信息替换成自己的就好了。这些信息将会在接下来上传的时候,自动打包成 Maven 项目,并封装相应信息。
配置上传时需要的签名以及密码等相关信息首先我们需要创建一个 gpg 签名秘钥,并将公钥上传到指定服务器。对于在 MacOS 下,我们可以下载一个叫做GPGTools (http://www.gpgtools.org)的工具生成我们的签名文件。在 windows 下,我们下载安装一个 Kleopatra(https://www.gpg4win.org/thanks-for-download.HTML)工具生成我们的签名文件。这两个工具使用基本一致,在安装完成之后,新建一个密钥对,并将本地公钥上传到指定服务器。
上传完成之后,就可以正式配置签名信息以及你的 Maven 账户信息了,我们在 library Module 的根目录下新建一个 gradle.propertIEs 文件,内容如下:
signing.keyID= 密钥的ID (注意一下,密钥ID 是一个八个字节的字符串 Kleopatra工具需要悬浮在 密钥ID 一栏查看 )signing.password= 密钥的密码 (生成证书时填写的密码)signing.secretKeyRingfile=..\secret.gpg(secret.gpg为私密证书。将导出的私密证书,放置在工程目录下)ossrhUsername= sonatype 账号ossrhPassword= sonatype 密码
配置成功之后,按照下图运行 uploadArchives 就可以开始上传了,这样就可以将你的文件上传到 Maven 中央库了
将上传的开源库发布出去通过上面的步骤,我们只是把开源库放置在了一个私有的 Maven 仓库中,是不能被其他人所访问的。所以还需要我们自己将它发布出去。那么如何发布:
① 进入 Maven 项目控制台
进入以下地址:https://oss.sonatype.org/,并使用 sonatype 的账号密码在右上角进行登录。
② 查找你上传的项目
如果你登录成功,在左侧的导航栏,你会看到一个叫做 Staging RepositorIEs 的选项,点击它,你会发现出现了很多列表选项,如下图4。
根据列表名称,你会发现一个以你的 groud ID 去掉点号后加上一个四位数字命名的Repository,选中它,你会发现上方的 Close 按钮亮起,当你确认上传无误之后,你可以点击 Close 按钮,关闭掉这个仓库,不允许再次上传。如果关闭成功,你点击刷新以后会发现,Release 按钮亮起,点击它即可发布。如果关闭失败,你可以看看下方的界面,查找一下失败原因,再次上传代码,关闭后发布。
上图就是我的解决过程,然后再 close ,再 release ,OK 这就将开源库发布出去了。
查找开源库注意开源库发布出去之后,还是需要等待一段时间,才能在这里 https://search.maven.org/ 查找我们的开源库,以及查看如何依赖自己的开源库。我是下班第二天来看的,查收 email 也是有通知的
总结以上是内存溢出为你收集整理的上传Android studio项目到Maven项目仓库全部内容,希望文章能够帮你解决上传Android studio项目到Maven项目仓库所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)