(笔记)关于Bintray 上传 Jcenter

利用Bintary插件将arr上传到Jcenter

以下几个步骤:
  • 注册bintray账号(https://bintray.com)
  • 新建Android Library Moudle
  • 配置Moudle的build.gradle
  • 命令直接上传
  1. 注册账号 -- 略

  2. 新建Android Library Moudle:
    首先新建一个Projece:


    (笔记)关于Bintray 上传 Jcenter_第1张图片
    屏幕快照

    然后新建一个Android Library Moudle:


    (笔记)关于Bintray 上传 Jcenter_第2张图片
    屏幕快照
(笔记)关于Bintray 上传 Jcenter_第3张图片
屏幕快照

(笔记)关于Bintray 上传 Jcenter_第4张图片
屏幕快照

完毕以后如图:

(笔记)关于Bintray 上传 Jcenter_第5张图片
屏幕快照

接下来就是正式配置了,首先打开Project的build.gradle,在这里也就是BintaryEample/build.gralde

buildscript {
  repositories {
      google()
      jcenter()
  }
  dependencies {
      classpath 'com.android.tools.build:gradle:3.0.0-beta3'
      classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
      classpath 'com.novoda:bintray-release:0.5.0'
  }
}

添加

  classpath 'com.novoda:bintray-release:0.5.0'

然后打开library的build.gradle,在这里也就是BintaryExample/bintarylib/build.gradle

apply plugin: 'com.android.library'
apply plugin: 'com.novoda.bintray-release'

添加

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

这时候 Sync

如果控制台出现:

Error:Exception thrown while executing model rule: PublishingPlugin.Rules#addConfiguredPublicationsToProjectPublicationRegistry(ProjectPublicationRegistry, PublishingExtension, ProjectIdentifier)

恭喜你,配置成功~~出现上面这段错误是因为我们的

publish{}

还没配置。

敲黑板!!这里的版本号一定要注意。

当你的Project的build.gradle:

classpath 'com.android.tools.build:gradle:2.3.3'

gradle-wrapper.properties:

distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip

的时候,BintaryExample/build.gradle:

classpath 'com.novoda:bintray-release:0.5.0'
classpath 'com.novoda:bintray-release:0.4.0'

这两个都是可以的

但是像我用上面的:

 classpath 'com.android.tools.build:gradle:3.0.0-beta3'

gradle-wrapper.properties:

distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip

的时候,

com.novoda:bintray-release:x.x.x只能用0.5.0以上

不然就

屏幕快照 2017-08-31 下午3.16.40.png

Unable to load class 'org.gradle.api.internal.component.Usage'.
GG了,这个问题困扰了我一早上,所以一定要注意版本号。

好了车头摆回来:
配置好以上步骤后,在BintrayExample/bintraylib/build.gralde的最后面加上以下信息:

publish {
    userOrg = 'chanzeebm'
    repoName='Chan'
    licences=['Apache-2.0']
    groupId = 'com.king'
    artifactId = 'bintrayLib'
    publishVersion = '0.1.0'
    desc = 'this is a frame for android base'
    website = 'https://github.com/chansebm/pframe'
}
  • userOrg : 你在Bintray的用户名(也就是你注册完毕登陆进去以后,右上角那个)
  • groupId : 你的组名
  • repoName : Bintray的仓库名。
  • licences : A list of license identifiers for the project,嗯对 我不会翻译。
  • artifactId : 你在Bintray注册的包名(下面教)
  • publishVersion : 版本号
  • desc : 描述(不重要)
  • website : 站名(不重要 按照github的规则写就是咯)

完了以后,打开https://bintray.com主页。

(笔记)关于Bintray 上传 Jcenter_第6张图片
屏幕快照

添加一个repository。

(笔记)关于Bintray 上传 Jcenter_第7张图片
屏幕快照
  • Name对应
publish{repoName='Chan'}
  • Type 选择Maven

  • Default Licenses 选择对应

publish{licences='[Apache-2.0]'}

(如果publish里面不写licences默认就是Apache-2.0,那么这里要选择Apache-2.0)

  • Description 描述

  • Create。

添加包名

(笔记)关于Bintray 上传 Jcenter_第8张图片
屏幕快照
(笔记)关于Bintray 上传 Jcenter_第9张图片
屏幕快照
  • Name 对应:
publish{artifactId='bintrayLib'}
  • Version control对应:
publish{publishVersion='0.1.0'}
  • Create Package

上传

打开AS,切换到Terminal:

(笔记)关于Bintray 上传 Jcenter_第10张图片
屏幕快照

Mac:

./gradlew clean build bintrayUpload 
-PbintrayUser="chanzeebm"
-PbintrayKey="Api Key"
-PdryRun=false

Window:

.gradle clean build bintrayUpload
-PbintrayUser="chanzeebm"
-PbintrayKey="Api Key"
-PdryRun=false
  • PbintrayUser : 你的用户名 也就是Bintray主页的右上角
  • PbintrayKey : Api key
  • PdryRun : true则只运行不上传,false则上传

以上是一句话,我为了易读性分开写,不要写一句回车一次哦!

ApiKey:

(笔记)关于Bintray 上传 Jcenter_第11张图片
屏幕快照
(笔记)关于Bintray 上传 Jcenter_第12张图片
屏幕快照
  • 输入登陆密码
(笔记)关于Bintray 上传 Jcenter_第13张图片
屏幕快照

直接将API Key复制到

-PbintrayKey="your API Key"

最后,发布:

(笔记)关于Bintray 上传 Jcenter_第14张图片
屏幕快照
(笔记)关于Bintray 上传 Jcenter_第15张图片
屏幕快照
(笔记)关于Bintray 上传 Jcenter_第16张图片
屏幕快照
  • publish{} 里面的字段

  • 各种GG的解决办法

  • 以上!

你可能感兴趣的:((笔记)关于Bintray 上传 Jcenter)