基于Java语言与Gradle Api开发的Gradle Plugin,本Gradle插件可以让你的library发布到MavenCenter和自己的nexus私服变得非常容易。
内置了阿里云Maven中央仓库,其中配置了aliyun代理的central、jcenter、google。
一、最新版本(根目录build.gradle)
1 | classpath("io.github.szhittech:gradle-maven:0.1.0") |
二、功能简介
- 支持发布多种类型的库, 例如:
Java、Android、Kotlin; - 支持在新的
gradle中依赖方式api / implementation; - 支持签名库资源,
包括sources、Javadoc、POM(需要Gradle Version >= 4.8) - 本插件内置了
signing签名信息与文件(secring.gpg)
三、使用步骤
1. 在根目录build.gradle中新增如下代码
1 | classpath("io.github.szhittech:gradle-maven:0.1.0") |
2. 在library/build.gradle中新增如下代码
1 | apply plugin: 'gradle.maven' |
四、发布MavenCenter步骤
1. 配置根目录下gradle.properties
如果发布到MavenCenter,该文件无需配置
2. 配置library/build.gradle
1 | ext { |
| 参数 | 必选 | 描述 |
|---|---|---|
| groupId | 是 | 项目组织唯一的标识符 |
| name | 是 | 项目名称 |
| version | 是 | 项目版本。有-SNAPSHOT发布快照,没有发布release版 |
| description | 否 | 项目描述 |
| url | 否 | 项目地址 |
| connection | 否 | 项目地址 |
| authorId | 否 | 作者ID |
| authorName | 否 | 作者姓名 |
| authorEmail | 否 | 作者邮箱 |
3. 执行发布任务
如上图,点击uploadToMaven,即可将库发布到MavenCenter
发布MavenCenter成功后 Release版步审核步骤如下:
- 上述步骤成功后,请登录https://s01.oss.sonatype.org/;
- 页面左侧栏点击
Build Promotion->Staging Repositories; - 在
Staging Repositories选项卡可以看到刚提交的release版本库,如:iogithubszhittect-xxxx; - 勾选
iogithubszhittect-xxxx,点击Close; - 稍等几十秒
Refresh,再次勾选iogithubszhittect-xxxx,点击Release,即可发布成功,等待大概4小时;
4. 自定Maven oss账号配置
因本插件与groupId = "io.github.szhittech"绑定,如果用户需要添加自己的groupid,则需要在gradle.properties配置Maven oss账号
Maven oss账号注册,请至https://s01.oss.sonatype.org/注册
gradle.properties配置如下:
1 | maven.name=maven |
五、发布Nexus私服步骤
1. 配置根目录下gradle.properties
1 | nexus.name=coding |
| 参数 | 必选 | 描述 |
|---|---|---|
| nexus.name | 是 | 自定义前缀名称,本例coding,下面字段就都以coding为前缀 |
| coding.username | 是 | 私服用户名 |
| coding.password | 是 | 私服密码 |
| coding.snapshot | 是 | 私服快照版上传地址 |
| coding.release | 是 | 私服release版上传地址 |
2. 配置library/build.gradle
1 | ext { |
| 参数 | 必选 | 描述 |
|---|---|---|
| groupId | 是 | 项目组织唯一的标识符 |
| name | 是 | 项目名称 |
| version | 是 | 项目版本。有-SNAPSHOT发布快照,没有发布release版 |
| description | 否 | 项目描述 |
| url | 否 | 项目地址 |
| connection | 否 | 项目地址 |
| authorId | 否 | 作者ID |
| authorName | 否 | 作者姓名 |
| authorEmail | 否 | 作者邮箱 |
3. 执行发布任务
如上图,点击uploadToCoding,即可将库发布到Nexus私服
注意:这里的Coding就是上文自定义的前缀(nexus.name)
友情链接: