AndroidStudio怎么将开源项目发布到jcenter

如何把自己写的项目让别人依赖呢,像compile ‘com.google.code.gson:gson:2.6.2‘一样?

上面的依赖library需要3各部分,即:GROUP_ID:ARTIFACT_ID:VERSION,其中GROUP_ID是com.google.code.gson(库的包名),ARTIFACT_ID是gson(类库名称),VERSION是2.6.2(版本号)。

怎么上传你的类库到jcenter仓库?

基本上大致的步骤可以慨括为,在AndroidStudio上准备好要上传的库项目,配置相关gradle代码,然后上传到bintray网站上,最后同步到jcenter仓库里。
  1. bintray.com上面注册一个账号,可使用github账号登录。
  2. 创建一个新的仓库,如下图所示

     上面的 Issues tracker,例如:https://github.com/DyncKathline/SwipeBackLayout/issues Version control *, 例如:https://github.com/DyncKathline/SwipeBackLayout
  3. Create Package成功后,就可以看到我们刚创建的Package,如下图所示

把自己的Android Studio类库pull到jcenter上去

在这里我们将要上传的是Android Library module,如下图所示。

然后我们需要设置bintray的username和API Key来进行bintray的加密认证,这些信息将写在local.properties文件里。写在local.properties的原因在于,bintray的username和APIKey是敏感的私人信息,自己应该保管好,而不是把它上传到github上,正好把local.properties文件写在.gitignore里面过滤掉不会影响上传的github项目。
代码如下:

bintray.user=YOUR_BINTRAY_USERNAME
bintray.apikey=YOUR_BINTRAY_API_KEY

这里的username就是你bintray账号的用户名,APIKey可以在bintray页面的Edit Profile找到。

在要上传的类库module的build.gradle文件里添加如下代码:

apply plugin: ‘com.android.library‘

android {
    compileSdkVersion 23
    buildToolsVersion ‘23.0.3‘

    defaultConfig {
        minSdkVersion 11
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.pro‘
        }
    }
}

dependencies {
    compile fileTree(dir: ‘libs‘, include: [‘*.jar‘])
    compile ‘com.android.support:appcompat-v7:23.4.0‘
}

//解决 gradlew 构建错误: 编码 GBK的不可映射字符
tasks.withType(Javadoc) {
    options.encoding = "UTF-8"
}

ext {
    bintrayRepo = ‘SwipeBackLayout‘ //这个应该是传到maven的仓库的
    bintrayName = ‘SwipeBackLayoutLibrary‘  //发布的项目名字

    publishedGroupId = ‘com.example.swipebackactivity‘
    libraryName = ‘SwipeBackLayoutLibrary‘
    artifact = ‘swipebacklayout‘

    libraryDescription = ‘With immersion sideslip the effect of closed Activity‘ //项目的描述

    siteUrl = ‘https://github.com/DyncKathline/SwipeBackLayout‘ // 项目的主页
    gitUrl = ‘https://github.com/DyncKathline/SwipeBackLayout.git‘ // Git仓库的url

    libraryVersion = ‘1.0.0‘ // 这个version是library的版本,更新后也需要更改这个值

    developerId = ‘dync‘
    developerName = ‘DyncKathline‘
    developerEmail = ‘[email protected]‘

    licenseName = ‘The Apache Software License, Version 2.0‘
    licenseUrl = ‘http://www.apache.org/licenses/LICENSE-2.0.txt‘
    allLicenses = ["Apache-2.0"]
}

apply from: ‘https://raw.githubusercontent.com/nuuneoi/JCenter/master/installv1.gradle‘
apply from: ‘https://raw.githubusercontent.com/nuuneoi/JCenter/master/bintrayv1.gradle‘

这里可以参考以下图

在这里需要把bintrayName写成之前Create Pacakge所填写的package name,publishedGroupId就是我们之前提到的GROUP_ID,artifact就是之前提到的ARTIFACT_ID,libraryVersion就是VERSION。
然后在project的build.gradle里添加以下代码:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath ‘com.android.tools.build:gradle:2.1.3‘

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath ‘com.jfrog.bintray.gradle:gradle-bintray-plugin:1.6‘
        classpath ‘com.github.dcendents:android-maven-gradle-plugin:1.5‘
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

最后在AndroidStudio提供的Terminal窗口执行如下命令:

gradlew install

如果顺利的话,过几分钟就会出现

BUILD SUCCESSFUL

接下来需要把build成功的文件upload到bintray上

gradlew bintrayUpload

顺利的话,也会出现

BUILD SUCCESSFUL

最后你可以在jcenter上看到如下图所示:

到了这里我们只要在上图点击“Add 头jCenter”,如下图所示:

接下来会跳到一个Request to include package GradientUI in jcenter的页面,什么都不用做,直接点击Send按钮就可以了。

大概过个2,3个小时,通过jcenter那边的审核就会在bintray上收到jcenter那边的同意消息提醒。 至此就要恭喜你,你的类库上传到jcenter成功了!
到这里大家就可以用自己的类库了,仅仅只需要添加一行代码:

dependencies {
    compile ‘com.example.swipebackactivity:swipebacklayout:1.0.0‘
}

转载请注明出处,谢谢!

时间: 2024-10-13 11:12:07

AndroidStudio怎么将开源项目发布到jcenter的相关文章

android开源库发布到jcenter图文详解与填坑

相信很多人都用过开源项目,特别是android studio普及以后,使用开源库更方便简单.而如何上传开源库到jcenter供大家方便使用,虽然网上也有教程,但还是遇坑了,最后总结一下,希望可以帮助大家. [csdn地址: http://blog.csdn.net/zhangke3016/article/details/52075159] [本文简书地址: http://www.jianshu.com/p/0acf9e05b27e]同步更新 AndroidStudio是从Maven Reposi

将自己的开源项目提交到JCenter

开始 最近自己写了一个开源控件,是有关标签流控件的(从服务器端获取标签,然后将标签自适应的放进一个容器里).现在控件写完了,自己就想将它提交到Maven的中心仓库或者是JCenter.可是自己对maven不熟,并且用Android Studio写的工程提交到Maven的中心仓库确实比较繁琐,所以决定还是用JCenter. 申请账号 关与项目提交到JCenter,网上有个教程写的很好,我基本上也是参照上面来做的,但是途中也遇到了一些坑,所以觉得还是有必要叙述一下的.首先你要做的是申请Bintray

使用Android Studio将开源库发布到Jcenter中央库

首先在 https://bintray.com 注册一个账号,登录后然后从其后台获得一个API Key 在你的项目根目录下的build.gradle文件中加入依赖,最后文件内容就变成了这样子. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.2.3' classpath 'com.jfrog.bintray.gradle:gradle-bintr

一步一步教你将开源项目上传到jcenter

最近闲着看了一下jcenter的使用,也想将自己使用频率比较高的东西抽成类库,然后通过compile来使用,提高开发效率,本来以为挺简单的,但是网上介绍的比较模糊,很多博客也比较老了,不适用,花了我一天的时间,还是走了很多弯路,这里记录下来,希望能帮助到小伙伴们,现在觉得还是挺简单的.第一步:首先是注册,这就是我踩的最大的一个坑,导致我一天都没有上传成功.网上说的都是去jcenter的网站上注册就可以,其实不然,英文好的最好去看英文文档,一步一步来操作.个人正确的注册地址:https://bin

AndroidStuio快速发布开源项目到Jcenter/Bintray

AndroidStuio快速发布开源项目到Jcenter/Bintray 版权声明:转载请注明本文转自严振杰的博客: http://blog.csdn.net/yanzhenjie1003 QQ交流群1:46505645 QQ交流群2:46523908 群资源有限,请不要重复加群,谢谢. 前言 最近做了两个开源项目,一个是Android网络框架NoHttp,和Volley.OkHttp一样做客户端请求的,更多相关信息请百度哦:另一个是Android Web服务器框架AndServer,用来在An

[转]使用Gradle发布Android开源项目到JCenter

转自:http://blog.csdn.net/maosidiaoxian/article/details/43148643 使用Gradle发布Android开源项目到JCenter 分类: Gradle笔记2015-01-26 09:41 8508人阅读 评论(33) 收藏 举报 gradle发布jcenter发布项目 目录(?)[+] 喜欢做些开源项目的朋友,相信有不少人都希望能把自己的项目发布到公共的中央仓库,如maven中央仓库,以供别人方便地集成使用.而使用了Android Stud

Android 快速发布开源项目到jcenter

转载请标明出处(请勿转载删除底部微博.微信等信息): http://blog.csdn.net/lmj623565791/article/details/51148825: 本文出自:[张鸿洋的博客] 大家在很多时候都希望让自己的开源项目可以更方便的让用户去使用,那么对于Android平台,一个很好的方式就是上传到jcenter,然后使用时通过添加compile引用即可. 对于上传到jcenter,也不算技术类的文章,而且已经有很多较好的文章可以参考,写之前我也大致百度了一下. 目前很多文章都是

使用Gradle发布Android开源项目到JCenter

这里介绍一下,如何使用Gradle发布到jcenter. 注册 先到https://bintray.com注册一个账号. 配置账号 我们需要配置一下BINTRAY_USER及BINTRAY_KEY两个属性.BINTRAY_USER即你注册的账号名,BINTRAY_KEY可通过以下方法找到. 如图所示,先点击你的账号名称进入个人页面. 然后点击Edit,进入编辑页面. 接着点击API key,再点右边的Show就可以看到API KEY了. 然后到你的.gradle目录下(如果你没有配置过GRADL

DIOCP开源项目-DIOCP3的重生和稳定版本发布

DIOCP3的重生 从开始写DIOCP到现在已经有一年多的时间了,最近两个月以来一直有个想法做个 30 * 24 稳定的企业服务端架构,让程序员专注于逻辑实现就好.虽然DIOCP到现在通讯层已经很稳定了,但是要做如果做这种架构,发现还有诸多不便.于是,有了重写DIOCP的想法. 关于开源服务器的选用: 前段时间大部分代码已经编写完成,于是需要给diocp3安个家,google显然不行了,老是被墙.然后准备选用http://sourceforge.net/,发现我的qq email老是收不到验证邮