【我的Android进阶之旅】如何快速寻找Android第三方开源库在Jcenter上的最新版本...
- 問題描述
- 解決方法
- 先了解compile comsquareupokhttpokhttp240的意義
- 了解Jcenter和Maven
- jcenter
- Maven Central
- 理解jcenter和Maven Central
- 快速搜索方法1
- 快速搜索方法2
- 快速搜索方法3
- 因此要注意看你是想要那個版本的
問題描述
今天有個android開發者問了我下面的問題:
問個問題
比如我想找最新的okhhtp compile的最新那句話 compile ‘com.squareup.okhttp:okhttp:2.4.0’
2.4.0明顯不是最新的
應該怎么找?
如下圖所示:
好吧,就這個問題寫一篇博客來描述怎么找到最新的第三方開發包的版本。
解決方法
先了解compile ‘com.squareup.okhttp:okhttp:2.4.0’的意義
首先我們要了解compile ‘com.squareup.okhttp:okhttp:2.4.0’這一行gradle代碼的意義。
compile 'com.squareup.okhttp:okhttp:2.4.0基本上我們可以從這一行代碼可以了解到,引用一個library的代碼需要3個部分,即:
GROUP_ID:ARTIFACT_ID:VERSION
在這句代碼里面的
GROUP_ID 是com.squareup.okhttp,
ARTIFACT_ID 是okhttp,
VERSION 是2.4.0
按照我的理解,
GROUP_ID就像是我們寫一個項目使用的公司包名一樣,表示自己所在的團隊或個人,
ARTIFACT_ID我認為就是這個類庫的名稱,用于區分同一個GROUP下不同的類庫,
最后的VERSION顧名思義就是版本號。
了解Jcenter和Maven
Android Studio是從build.gradle里面定義的Maven 倉庫服務器上下載library的。Apache Maven是Apache開發的一個工具,提供了用于貢獻library的文件服務器。總的來說,只有兩個標準的Android library文件服務器:jcenter 和 Maven Central。
jcenter
jcenter是一個由 bintray.com維護的Maven倉庫 。你可以在這里看到整個倉庫的內容。
我們在項目的build.gradle 文件中如下定義倉庫,就能使用jcenter了:
Maven Central
Maven Central 則是由sonatype.org維護的Maven倉庫。你可以在這里看到整個倉庫。
注:不管是jcenter還是Maven Central ,兩者都是Maven倉庫
我們在項目的build.gradle 文件中如下定義倉庫,就能使用Maven Central了:
注意,雖然jcenter和Maven Central 都是標準的 android library倉庫,但是它們維護在完全不同的服務器上,由不同的人提供內容,兩者之間毫無關系。在jcenter上有的可能 Maven Central 上沒有,反之亦然。
理解jcenter和Maven Central
為何有兩個標準的倉庫?
事實上兩個倉庫都具有相同的使命:提供Java或者Android library服務。上傳到哪個(或者都上傳)取決于開發者。
起初,Android Studio 選擇Maven Central作為默認倉庫。如果你使用老版本的Android Studio創建一個新項目,mavenCentral()會自動的定義在build.gradle中。
但是Maven Central的最大問題是對開發者不夠友好。上傳library異常困難。上傳上去的開發者都是某種程度的極客。同時還因為諸如安全方面的其他原因,Android Studio團隊決定把默認的倉庫替換成jcenter。正如你看到的,一旦使用最新版本的Android Studio創建一個項目,jcenter()自動被定義,而不是mavenCentral()。
有許多將Maven Central替換成jcenter的理由,下面是幾個主要的原因。
1. jcenter通過CDN發送library,開發者可以享受到更快的下載體驗。
2. jcenter是全世界最大的Java倉庫,因此在Maven Central 上有的,在jcenter上也極有可能有。換句話說jcenter是Maven Central的超集。
3. 上傳library到倉庫很簡單,不需要像在 Maven Central上做很多復雜的事情
4. 友好的用戶界面
基于上面的原因以及我自己的經驗,可以說替換到jcenter是明智之舉。
快速搜索方法1:
如剛才那位開發者的提問一樣,既然他是想要com.squareup.okhttp:okhttp的最新版本,那么我就去搜索com.squareup.okhttp:okhttp。如下圖所示:
可以看到搜索第一個排名就是com.squareup.okhttp:okhttp的maven的相關信息,點擊進入:
可以看到com.squareup.okhttp:okhttp的最新版本為2.7.5
點擊 2.7.5 的鏈接,進入如下如所示的界面:
上面寫了com.squareup.okhttp:okhttp的gradle的相關配置信息為:
maven的相關信息為:
因此可以知道com.squareup.okhttp:okhttp的最新版本為2.7.5,如果我們要在項目中使用com.squareup.okhttp:okhttp的話,只要在gradle文件中配置如下的命令即可。
compile 'com.squareup.okhttp:okhttp:2.7.5'快速搜索方法2:
當然我們也可以直接進入 https://bintray.com/ 網站搜索com.squareup.okhttp:okhttp,如下圖所示
然后搜索com.squareup.okhttp:okhttp,如下圖所示:
搜索結果如下所示:
如圖所示,我們可以知道com.squareup.okhttp:okhttp的最新版本為2.7.5,點擊鏈接com.squareup.okhttp進入如下界面:
如上圖所示,如果我們要在項目中使用com.squareup.okhttp:okhttp的話,只要在gradle文件中配置如下的命令即可。
compile 'com.squareup.okhttp:okhttp:2.7.5'快速搜索方法3:
直接去github上搜索 okhttp
點擊連接 square/okhttp 進入:https://github.com/square/okhttp
下面就有如何引入okhttp的方式,如下圖所示:
如上圖所示,表面okhttp最新版本是3.4.1,不過這是okhttp3.x版本的,之前那哥們要的是2.x版本
我們又進入maven網站去搜索 com.squareup.okhttp3
搜 com.squareup.okhttp
因此要注意看你是想要那個版本的。
作者:歐陽鵬 歡迎轉載,與人分享是進步的源泉!
轉載請保留原文地址:http://blog.csdn.net/ouyang_peng/article/details/52490193
轉載于:https://www.cnblogs.com/ouyangpeng/p/8537695.html
總結
以上是生活随笔為你收集整理的【我的Android进阶之旅】如何快速寻找Android第三方开源库在Jcenter上的最新版本...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cnetos7 vncserver安装与
- 下一篇: web.xml中filter,servl