美文网首页
Android 上传项目到 jcenter

Android 上传项目到 jcenter

作者: Enowr | 来源:发表于2018-02-01 14:13 被阅读84次

    1. 注册/登录 Bintray

    • Bintray 有个人账号和企业账号之分, 我们使用时一定要注意使用个人账号.
      注册地址

      20170503130935913.png
    • 登录成功进入下面的界面, 创建仓库


      01.png
      02.png
    • 创建成功后点击右下角的 Add New Package 创建一个新的包, 也就是我们要上传的项目


      03.png
      04.png

    2. Android Studio 中配置上传脚本

    • 新建 Library 项目或者打开已有的 Library 项目

    • 在 Project 中的 build.gradle 文件中加入以下代码
      注意版本与 Gradle 插件对应

      classpath 'com.novoda:bintray-release:0.5.0'
      
      05.png
    • 在 Library Module 中新建 bintray.gradle 文件, 并加入以下代码

      apply plugin: 'com.novoda.bintray-release'              // 添加
      
      publish{
          repoName = 'maven'                                  // 远程仓库名字,不指明,默认是上传到maven
          userOrg = 'wenjie'                                  // bintray.com 的用户名
          groupId = 'tech.jianyue.auth'                       // jcenter 上的路径, 自定义
          artifactId = 'auth'                                 // 项目名称
          publishVersion = '1.0.1'                            // 版本号
          desc = '第三方登录|分享|支付的 SDK'                    // 描述,不重要
          website = 'https://github.com/Jieger/AuthSDK'       // 项目主页
      }
      
      tasks.withType(Javadoc) {                               // 防止编码问题
          options.addStringOption('Xdoclint:none', '-quiet')
          options.addStringOption('encoding', 'UTF-8')
          options.addStringOption('charSet', 'UTF-8')
      }
      
    • 在 Library Module 中的 build.gradle 文件中引用 bintray.gradle 文件.

      apply from: 'bintray.gradle'
      

    3. 上传项目到 Bintray

    • 到 Bintray 个人主页点击 Edit


      06.png
    • 选择 API Key, 然后复制那一长串的 key 值


      07.png
    • 回到 AS 打开 Terminal 控制台输入以下代码, 替换为自己的用户名和 key , Mac 下命令前加 ./

      ./gradlew clean build bintrayUpload -PbintrayUser=*** -PbintrayKey=****** -PdryRun=false
      
    • 稍等当出现 BUILD SUCCESSFUL 就说明上传成功了

    4. 提交审核

    • 回到我们创建的 Package 下, 然后点击右下角的 Add to JCenter 按钮

    • 这时候我们需要在下面填写审核描述(乱填都行不能不填,不填可能会审核失败!)


      08.png
    • 填写完成直接 Send, 一般一天左右就会审核通过, 会发邮件通知

    • 然后我们选择 Package 页左下角的 Gradle 选项 ,就会看到我们想要的引用方式


      09.png

    5. 常见问题

    • 400, 在对应的Maven库下没有创建对应的包,或者是你artifactId的值跟你创建的包名字不一样!

      HTTP/1.1 400 Bad Request [message:Please enter a valid VCS URL for your OSS package.]
      
    • 401 错误很明显是认证错误,可能是你的用户名或者API key错了

      Error:Execution failed for task ‘:viewpagerutilslib-v1:bintrayUpload’.> Could not create package> ‘xxxxx/maven/xxxxxxxxx’: HTTP/1.1 401 Unauthorized
      
    • 404问题, 你在上传 library 到 bintray 之前, 你需要先在bintrary new 一个仓库, type 应该是 maven;
      或者是你 repoName 的值跟你创建的仓库名字不一样, 还有可能是你的 userOrg 也没有写对!

      Error:Execution failed for task ‘:viewpagerutilslib-v1:bintrayUpload’.> Could not create package> ‘xxxxxx/maven/xxxxx’: HTTP/1.1 404 Not Found
      

      其次 userOrg 不一定与登录用户名 -PbintrayUser=***一样! 需要参照下图对应.

      11.png
    • 批处理 macOS 与 windows 的区别
      Mac 需要在命令前加 ./
      Windows 不需要

    更简单的方式, 使用 JitPack

    • 地址

    • 如果觉得以上配置比较复杂, 可以在这个网站上传项目, 完全不用在项目中配置.

      1. 上传项目到 GitHub.
      1. 登录网站, 并填写项目地址, 选择对应版本.
      12.png
    • 3.下面就会出现相应的引用方式.

      13.png

    参考以下文章进行实践, 后又总结成文, 十分感谢:

    http://blog.csdn.net/daydayplayphone/article/details/53503856
    http://blog.csdn.net/qq_23179075/article/details/71123452

    相关文章

      网友评论

          本文标题:Android 上传项目到 jcenter

          本文链接:https://www.haomeiwen.com/subject/qbarzxtx.html