前言
有些時(shí)候,遇到gradle構(gòu)建下載依賴包的時(shí)候出現(xiàn)了錯(cuò)誤,或者timeout。于是乎就想要自己手動(dòng)去maven、jcenter、jitpack、aliyun等倉庫去下載。下載之后呢可以放在gradle的cache目錄下面,也就是下面的地址
.gradle/caches/modules-2/files-2.1

可以看到,gradle構(gòu)建下載的依賴包都在這里。
然而當(dāng)我們手動(dòng)下載之后,還需要放到對(duì)應(yīng)的包的目錄下面去。

那么問題來了,下載好了之后這個(gè)目錄是啥?
網(wǎng)上資料很少,只知道是SHA1碼,一開始還以為是下載的URL的SHA1碼,結(jié)果驗(yàn)證了一下,卻不是的。
解決
最終直接分享答案,這個(gè)目錄其實(shí)就是下載的文件的SHA1碼,是文件的SHA1。
mac的話可以用shasum命令查看。
shasum (文件路徑)
win的話好像是
certutil -hashfile (文件路徑) SHA1
最后
一般情況,jar、aar、pom、source、doc等文件,都是一個(gè)SHA1目錄對(duì)應(yīng)一個(gè)文件。
有些時(shí)候,jar和pom會(huì)下載到同一個(gè)目錄下面,這時(shí)候呢,其實(shí)還是用的是jar的SHA1。

順便再說一下pom是干啥的。
pom其實(shí)就是aar或者jar依賴的其他第三方工程的一個(gè)配置文件。

可以看到,這里其實(shí)是seamless-http的第三方依賴,比如servlet-api、seamless-util等,就跟gradle一樣。gradle依賴的第三方庫,可能還依賴了其他的三方庫。