发布库到jcenter中所遇的坑与解决方法

原本以为上传一个库到jcenter应该不难,但是没想到遇到了这么多坑,把很多事情都给耽误了.

坑一:bintray注册的问题.

我是直接使用github登陆的结果我github的primary email是我的163邮箱,bintray注册邮箱总是不过,只能去注册一个gmail邮箱了,但是我大天朝的国情大家都是知道的,

只能,开始真的不想使用于是先修改host,申请了一个gmail邮箱,可是github邮箱验证时又出现问题,这个host不能访问google,但是验证又必须打开google,没办法

还是必须得开,验证完成总算是注册好了bintray.


坑二:使用命令行进行上传项目到bintray出现编码格式错误的问题

这个问题搞了我很久,关键不是百度找不到相关问题,而是很多相关的回答并没有起作用,直到最后才找到正确的。

解决方法:

在Project的build.gradle中添加:

allprojects {
    repositories {
        jcenter()
    }

    tasks.withType(Javadoc) {
        options{
            encoding "UTF-8"
            charSet 'UTF-8'
            links "http://docs.oracle.com/javase/7/docs/api"
        }
    }
}


坑三:因为我看的是hongyang的博客,但是却丢了几个坑,幸好地下的评论给出了很多的解决方法

 1.

publish {
    userOrg = 'hyman'//bintray.com用户名
    groupId = 'com.hyman'//jcenter上的路径
    artifactId = 'basetools'//项目名称
    publishVersion = '1.0.0'//版本号
    desc = 'Oh hi, this is a nice description for a project, right?'//描述,不重要
    website = 'https://github.com/hyman/basetools'//网站,不重要;尽量模拟github上的地址,例如我这样的;当然你有地址最好了
}

这里面的userOrg我开始理解成用户名,事实上在bintray中对应的是组织名称

对应的是这个:


2.

 ./gradlew clean build bintrayUpload 
 -PbintrayUser=hyman 
 -PbintrayKey=xxxxxxxxxxxxxxxxxxxxxx 
 -PdryRun=false
windows中使用需要去掉./ 并且执行的使用需要放到一行才行

3.执行的时候报错说bintray没有maven这个库。原来bintray-release插件默认的使用的库名是maven,我想在上面的pulish中找到修改的属性结果没找到..

只能进入bintray中创建一个吧.


所有的坑完成了之后,build success.真是不容易。



你可能感兴趣的:(Android,开发工具)