从 aar 到 Jcenter 看这篇就够了

eclipse 时代的项目依赖通常是 jar 包依赖 和 Android 库项目依赖。
Android Studio 时代提供了一个新的依赖方式 aar。 aar 结合了以上两种方式的优点 可以将资源文件 和 代码打入这个 aar 文件中。Gradle 即支持以 aar 的形式依赖远程服务器上的库项目。

aar 和 Jcenter

在你工程应用下可见 build.gradle 文件

buildscript {
    repositories {
        jcenter()
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.0'
        // just for GCM.
        classpath 'com.google.gms:google-services:2.1.2'
    }
}

allprojects {
    repositories {
        jcenter()
        mavenCentral()
    }
}

以上代码片段是 Android studio 自动生成的,gradle 执行编译时会去 jcenter 远程仓库去找 aar ,jcenter 找不到时然后会去 mavenCentral 仓库找。当然你也可以自定义远程仓库

http://mvnrepository.com

从 aar 到 Jcenter 看这篇就够了_第1张图片


本地依赖 aar

aar 既然可通过远程仓库依赖,当然也可以本地依赖

本地生成的 aar 路径。module 工程下 build/outputs/aar/xxxx.aar

从 aar 到 Jcenter 看这篇就够了_第2张图片

使用 aar

从 aar 到 Jcenter 看这篇就够了_第3张图片

从 aar 到 Jcenter 看这篇就够了_第4张图片

导入成功后就可以像使用 module 一样使用 aar 了


上传依赖至 Jcenter

Jcenter 官网

https://github.com/13120241790/JcenterConfig

建议 jdk 装 1.8 的 不然容易出各种奇葩问题

从 aar 到 Jcenter 看这篇就够了_第5张图片

从 aar 到 Jcenter 看这篇就够了_第6张图片

建议打包上传 bintray 如果出现莫名其妙的失败 也可以开启 再尝试 看看可能是不是没的原因,就可能有这么尿性

命令建议 gradle 和 gradlew 都尝试 gradlew 找不到 看下工程根目录下有没有 gradlew 和 gradlew.bat 批处理文件 如果有就用 ./gradlew 来执行

从 aar 到 Jcenter 看这篇就够了_第7张图片

24 mins 这时间也是醉了

bintrayupload 后会生成如下文件

从 aar 到 Jcenter 看这篇就够了_第8张图片

在 bintray 上发了一个 add to JCenter 的申请 等待审核
审核如果通过即可依赖 ,因为美国和北京时间的时差导致 审核的时间可能需要一天 (下图可见我申请的时间是美国时间 6.25 )

从 aar 到 Jcenter 看这篇就够了_第9张图片

你可能会遇见上传结果反馈失败的情况,一般是你上传的东西不齐全 例如 pom aar javadoc 等

从 aar 到 Jcenter 看这篇就够了_第10张图片

申请成功后 Bintray 会发邮件和站内信通知你申请结果

这里写图片描述

GroupId:ArtifactId:libraryVersion

com.netlibrary:network:1.0.0

Jcenter 创建组织

可以新建组织 或者 导入 github 上已有的组织
注意导入 github 组织的时候 你需要有该组织的权限 如果你至少 member 的话 你可以去请求权限

从 aar 到 Jcenter 看这篇就够了_第11张图片

从 aar 到 Jcenter 看这篇就够了_第12张图片

从 aar 到 Jcenter 看这篇就够了_第13张图片

从 aar 到 Jcenter 看这篇就够了_第14张图片

创建完组织以后你可以

  • 查看组织详情
  • 新建仓库
  • 新增组织成员

从 aar 到 Jcenter 看这篇就够了_第15张图片

从 aar 到 Jcenter 看这篇就够了_第16张图片

参考资料

http://www.cnblogs.com/qianxudetianxia/p/4322331.html
http://www.devtf.cn/?p=760&utm_source=tuicool&utm_medium=referral
https://github.com/Jude95/JCenter
http://www.jianshu.com/p/c721f9297b2f?utm_campaign=hugo&utm_medium=reader_share&utm_content=note
https://github.com/xiaopansky/android-library-publish-to-jcenter
http://blog.csdn.net/yyh352091626/article/details/51901562

Unsupported major.minor version 52.0
http://m.blog.csdn.net/article/details?id=52457904

你可能感兴趣的:(android,Jcenter,Maven,android,aar,仓库)