Android 发布个人组件到JCenter

前言

直接发布个人的组件后,可以方便的在gradle中引用

我们可以把组件发布到JCenter或者JitPack

  • 发布到JCenter上网上可以看到两种配置方式 有一种复杂的这里就不说了 怎么方便怎么来
  • 想对来说复杂的发布到JCenter方式可以看这篇文章
  • 发布到JitPack想对来说就特别简单了

发布到JitPack

发布测试

在CMD中运行(不要用PowerShell)

1
gradlew publishToMavenLocal

打开官网

在输入框中输入项目的git地址 如https://github.com/psvmc/ZJDateTimeSelecterNew.git

在要发布的版本上点击Get it 等左边的进度走完后 点击看看Log中是否成功 成功后就可以使用了

使用方式

在根目录的build.gradle中添加

1
2
3
4
5
allprojects {
repositories {
maven { url "https://jitpack.io" }
}
}

项目中就可以添加依赖

1
2
3
dependencies {
compile 'com.github.psvmc:ZJDateTimeSelecterNew:1.1.2'
}

以为这个无需审核 发布后就能使用 是不是简单方便 各种嗨
一定要在发布后看一下Log 看看是否成功
不成功的话根据提示修改后再发布

发布到JCenter

1.注册Bintray帐号

  • 打开Bintray官网进行注册
  • 登录后 在Owned Repositories下点击Add 添加一个名字为maven的仓库 点击创建
  • 然后创建包网址
  • 输入几个必输项
    Name(项目名字) 例如:ZJDateTimeSelecterNew
    Licenses
    Version control(github中的地址)例如:https://github.com/psvmc/ZJDateTimeSelecterNew.git 点击创建

2.项目配置与发布

在项目根目录build.gradledependencies节点中添加

1
classpath 'com.novoda:bintray-release:0.3.4'

添加后类似于

1
2
3
4
5
6
7
8
9
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.0'
classpath 'com.novoda:bintray-release:0.3.4'
}
}

在项目的模块目录build.gradle中的

1
apply plugin: 'com.android.library'

后添加

1
apply plugin: 'com.novoda.bintray-release'

android节点里添加

1
2
3
lintOptions {
abortOnError false
}

android同级节点添加

1
2
3
4
5
6
publish {
userOrg = 'psvmc'
groupId = 'cn.psvmc'
artifactId = 'ZJDateTimeSelecterNew'
publishVersion = '1.1.2'
}

添加后类似于

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
31
32
33
34
35
36
apply plugin: 'com.android.library'
apply plugin: 'com.novoda.bintray-release'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"

defaultConfig {
minSdkVersion 15
targetSdkVersion 23
versionCode 2
versionName "1.1.2"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}

lintOptions {
abortOnError false
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.+'
}

publish {
userOrg = 'psvmc'
groupId = 'cn.psvmc'
artifactId = 'ZJDateTimeSelecterNew'
publishVersion = '1.1.2'
}

artifactId与第一步的包名保持一致


终端中cd到项目的根目录中运行

1
./gradlew clean build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PdryRun=false

BINTRAY_USERNAME 替换成你的bintary上组册的用户名
BINTRAY_KEY 替换成你的 Bintray的API Key 即可

这两个值可以在这查看

3.链接到JCenter

登录https://bintray.com
打开个人中心 打开上传的包详情

当然也可以打开https://bintray.com/bintray/jcenter
输入包名(例如:ZJDateTimeSelecterNew) 也可以