AndroidStudio上传自己的项目到Bintray jCenter远程仓库!

请注明出处http://blog.csdn.net/qq_23179075/article/details/71123452

我们在AS中要使用别人开源库基本都是用下面的方式:

compile 'org.greenrobot:eventbus:3.0.0'

这样使用我们不用单独去下载别人的源文件、jar包之内的,我想说的是这真特么太方便了!


如果想把自己写的开源项目放在上面怎么弄? 下面是教程和我当时踩过的一些天坑

1.注册/登录Bintray

· 一定要点击下图标记的地方,或者直接打开下面的网址,不然上传不起项目(博主之前就坑这里了555!)

· 地址:https://bintray.com/signup/oss

这里写图片描述

AndroidStudio上传自己的项目到Bintray jCenter远程仓库!_第1张图片
这里写图片描述

· 如果你不想单独注册也可直接选择用GitHub登录/谷歌邮箱登录


· 我这里选择的从谷歌邮箱登录(如果直接注册用国内的QQ或者163邮箱可能不能识别邮箱大家都知道我大中华的国情)


· 登录成功进入下面的界面(如下图↓↓↓):

AndroidStudio上传自己的项目到Bintray jCenter远程仓库!_第2张图片
这里写图片描述

· 点击上图的 Add New Repostitory (看上图↑↑↑) 创建自己的maven仓库如下(如下图↓↓↓):

AndroidStudio上传自己的项目到Bintray jCenter远程仓库!_第3张图片
这里写图片描述

· 创建成功后就可以看到我们刚刚创建的仓库(如下图↓↓↓)

AndroidStudio上传自己的项目到Bintray jCenter远程仓库!_第4张图片
这里写图片描述

· 创建成功后点击右下角的 Add New Package (看上图↑↑↑) 创建一个新的包,也就是我要上传的项目(如下图↓↓↓)

AndroidStudio上传自己的项目到Bintray jCenter远程仓库!_第5张图片
这里写图片描述

2.在Androidstudio中配置bintray-release用于上传到远程仓库

· 新建Library项目或者打开已有的项目(如下图↓↓↓)

这里写图片描述

· 在Project中的:build.gradle加入以下代码:

classpath 'com.novoda:bintray-release:0.3.4'
![这里写图片描述](http://upload-images.jianshu.io/upload_images/2909848-605bf9a49dad9fca?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

>#### · 在Library中的:build.gradle加入以下代码:
>```
android {
    ...
}
dependencies {
    ...
}
/** 以下开始是将Android Library上传到jcenter的相关配置**/
apply plugin: 'com.novoda.bintray-release'//添加
//项目主页
def siteUrl = 'http://git.oschina.net/zhengliang_blog/shadow-view'
publish{
    repoName = 'MyMaven'//远程仓库名字,不指明,默认是上传到maven
    userOrg = 'zhengliang1995'//bintray.com的用户名
    groupId = 'com.zhengliang'//jcenter上的路径
    artifactId = 'shadow-view'//项目名称
    publishVersion = '1.0.0'//版本号
    desc = '一个控件阴影效果,支持阴影大小和颜色设置,可以设置控件上下的阴影'//描述,不重要
    website = siteUrl//项目主页
}
tasks.withType(Javadoc) {//防止编码问题
    options.addStringOption('Xdoclint:none', '-quiet')
    options.addStringOption('encoding', 'UTF-8')
    options.addStringOption('charSet', 'UTF-8')
}
>```
>#### · 注意下面的名字一定要对应(如下图↓↓↓)
>#### · 注意下面的名字一定要对应(如下图↓↓↓)
>#### · 注意下面的名字一定要对应(如下图↓↓↓)
![这里写图片描述](http://upload-images.jianshu.io/upload_images/2909848-240bb238138c7289?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

###3.开始上传
>#### · 回到JFrog Bintray个人主页点击 `Edit` (如下图↓↓↓)
>![这里写图片描述](http://upload-images.jianshu.io/upload_images/2909848-611180ba634238b9?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
>#### · 选择 `API Key` 然后复制那一长串的key值(如下图↓↓↓)
>![这里写图片描述](http://upload-images.jianshu.io/upload_images/2909848-0531517414c1ff5e?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
>#### · 回到AS打开Terminal控制台输入以下代码:
>```
>gradlew clean build bintrayUpload -PbintrayUser=zhengliang1995 -PbintrayKey=xxxxxxxxxxxx -PdryRun=false
>```
>![这里写图片描述](http://upload-images.jianshu.io/upload_images/2909848-8e8b38f250888097?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
>#### ·用你自己的用户名和API Key 替换一下就行了然后回车稍等当出现下面界面:(如下图↓↓↓) 就说明上传成功了!
>![这里写图片描述](http://upload-images.jianshu.io/upload_images/2909848-c4c84a4f801694f7?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

### 4.提交审核
>#### ·回到网页打开MyMaven下我们创建的shadow-view:(如下图↓↓↓) ; 然后点击右下角的 `Add to JCente` 按钮
>![这里写图片描述](http://upload-images.jianshu.io/upload_images/2909848-635bcd927684b8a1?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
>#### ·这时候我们需要在下面填写审核描述(乱填都行不能不填,不填可能会审核失败!)(如下图↓↓↓)
>![这里写图片描述](http://upload-images.jianshu.io/upload_images/2909848-6b905591450df29e?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
>#### ·填写完成直接Send,一般一天之后就会审核通过,通过后项目的右下角的 `Add to JCenter` 按钮就会消失! 
>#### ·然后我们选择左下角的` Gradle`选项 ,就会看到我们想要的东西..(如下图↓↓↓)
>![这里写图片描述](http://upload-images.jianshu.io/upload_images/2909848-52428d7b2ec55f4a?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
>#### ·大工告成,我们现在就可以复制上面的地址到我们的Androidstudio项目中`build.gradle`通过`compile`的方式使用我们自己写的库了,哈哈,是不是很爽哈!


###5.上传常见错误
>#### ·下面我们来看看上传过程中的常见错误(如果你成功了可以不用看下面):
>>####(1).HTTP/1.1 404 Not Found [message:Repo 'MyMaven' was not found]
>>![这里写图片描述](http://upload-images.jianshu.io/upload_images/2909848-74e036a15a9ed98c?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
>>####找不到Maven库,可能是你没有创建,或者是你`repoName`的值跟你创建的仓库名字不一样,还有可能是你的`userOrg`也没有写对!
***
>>####(2).HTTP/1.1 400 Bad Request [message:Please enter a valid VCS URL for your OSS package.]
>>![这里写图片描述](http://upload-images.jianshu.io/upload_images/2909848-a9e15bcece0645e6?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
>>####找不到包,在对应的Maven库下没有创建对应的包,或者是你`artifactId`的值跟你创建的包名字不一样!

你可能感兴趣的:(AndroidStudio上传自己的项目到Bintray jCenter远程仓库!)