zoukankan      html  css  js  c++  java
  • Android 开源库 GitHub 托管

    本文微信公众号「AndroidTraveler」首发。

    背景

    之前给大家写过一篇文章 Android 上传开源项目到 jcenter 实战踩坑之路,分享了上传开源项目到 jcenter 上面的一些踩坑经验。

    最近,又有一个开源项目要上传,发现 jcenter 出现各种问题。

    登录不上,登录后点击不断返回登录界面,或者 404 如下:

    没办法,只能找找看有没有其他方式可以开源项目。

    本文定位

    本文主要讲解新方法的一些坑和经验,具体操作不赘述,如有不清楚的可以看参考链接。

    1. 准备好要开源的项目

    假设你已经有了一个带 Module 的 Android 项目了。现在你想要将其开源出去。

    首先将其上传到 GitHub。

    这里演示使用的项目地址是:AndroidModule

    2. 打开 JitPack 地址

    点击右边链接打开:JitPack

    如下图:

    这个时候有两种方式可以获取远程代码仓库依赖。

    第一种方式:

    拷贝 GitHub 仓库到上图红框位置。

    点击 Look up,再点击具体的 TAB,比如 Releases 或者 Builds,可以看到下图:

    第二种方式:

    点击网站的右上角使用 GitHub 进行授权登录。

    登录后你的 public 仓库都会显示在左侧:

    点击就可以获得对应的仓库依赖了。

    3. 点击 Get it

    点击之后 Log 会显示一个 Loading,表明在编译中。

    如果编译错误,Log 会显示红色文本图标,点击可以查看错误。如果编译成功,Log 会显示绿色文本图标。

    当显示红色的时候,点击进去查看原因,比如我这里出现下面错误:

    A problem occurred evaluating project ':app'.
    > Failed to apply plugin [id 'com.android.application']
       > Minimum supported Gradle version is 5.1.1. Current version is 4.8.1. If using the gradle wrapper, try editing the distributionUrl in /home/jitpack/build/gradle/wrapper/gradle-wrapper.properties to gradle-5.1.1-all.zip
    

    最后到 JitPack GitHub 的 issue 里面找到了问题所在。

    就是修改项目的 build.gradle 文件,将

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

    改为

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

    即可。

    当显示绿色之后就表示可以用了。

    点击 Get 之后,屏幕会滑动到下方。可以看到如何引入到项目中。

    4. 引入

    很简单,两步即可:

    实战

    当然实际上我们并不会直接 Get it 某一个提交。

    我们会按照版本来操作,并且一般会对 ReleasesGet it 操作。

    第一步是点击 release:

    第二步是点击新建一个 release,因为这里是第二个,所以页面如下:

    第三步是填写相关信息,然后点击 Publish release

    这样就可以看到效果了。

    点击 Releases 可以看到所有的 Release 情况。

    然后我们到 JitPack 上面就可以看到我们这个最新的 Release 了。

    结语

    背景已经说了,有一个开源项目要上传。下篇文章跟要开源的项目有关,也会在那篇文章公布开源的项目。

    敬请期待。

    参考链接:
    jitpack/jitpack.io
    gradle version mismatch
    在github上面开源自己的android library,让项目依赖使用攻略

  • 相关阅读:
    JAVA开源B2C系统
    在IDEA中将SpringBoot项目打包成jar包的方法
    国外的开源项目Shopizer部署问题
    SpringBoot集成RabbitMQ
    隐藏网页中DIV和DOM的各种方法
    SpringCloud之网关 Zuul(四)
    SpringCloud之声明式服务调用 Feign(三)
    SpringCloud之实现客户端的负载均衡Ribbon(二)
    SpringCloud之服务注册与发现Eureka(一)
    IntelliJ IDEA maven springmvc+shiro简单项目
  • 原文地址:https://www.cnblogs.com/nesger/p/11834244.html
Copyright © 2011-2022 走看看