久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

項(xiàng)目依賴總是下載失敗?從報(bào)錯(cuò)、鏡像到緩存的排查指南

項(xiàng)目依賴總是下載失???從報(bào)錯(cuò)、鏡像到緩存的排查指南 項(xiàng)目里配置其他的依賴庫(kù)卻總是下載失敗這句話如果你也在工位上喊過(guò)那這篇內(nèi)容就是給你準(zhǔn)備的。我最近接手的模擬項(xiàng)目X需要引入幾個(gè)第三方庫(kù)結(jié)果從早上到下午下載進(jìn)度條一直在原地打轉(zhuǎn)好不容易起了個(gè)頭又報(bào)“連接超時(shí)”或者“Checksum mismatch”。這個(gè)問(wèn)題說(shuō)大不大但卡住之后整個(gè)研發(fā)節(jié)奏全亂而且它不像業(yè)務(wù)Bug有明確堆棧依賴下載失敗往往是環(huán)境、網(wǎng)絡(luò)、緩存、版本策略一堆因素疊在一起。這篇文章不想只丟給你幾行命令而是想把一套排查思路徹底拆開(kāi)。我會(huì)從實(shí)際報(bào)錯(cuò)怎么讀、常見(jiàn)原因怎么定位再到 Maven、Gradle、npm、pip 這些主流工具怎么寫(xiě)配置最后整理成一張速查表。無(wú)論你是后端、前端還是做數(shù)據(jù)分析腳本只要被依賴下載卡過(guò)應(yīng)該都能在這里找到對(duì)應(yīng)的解法。1. 先判斷“下載失敗”到底是什么性質(zhì)的失敗1.1 報(bào)錯(cuò)信息里的三個(gè)關(guān)鍵層級(jí)依賴下載失敗的報(bào)錯(cuò)看起來(lái)都是一團(tuán)紅字但拆開(kāi)之后其實(shí)就三類網(wǎng)絡(luò)層、倉(cāng)庫(kù)層、本地環(huán)境層。網(wǎng)絡(luò)層常見(jiàn)的關(guān)鍵字有Connection timed out、Connection reset、UnknownHostException倉(cāng)庫(kù)層常見(jiàn)的是403 Forbidden、404 Not Found、Authentication failed、Checksum mismatch、Could not transfer artifact本地環(huán)境層會(huì)出現(xiàn)Permission denied、No space left on device這類系統(tǒng)級(jí)問(wèn)題。如果能在報(bào)錯(cuò)第一行就定位到屬于哪一類后面排查能省一半時(shí)間。這里有個(gè)特別容易犯的誤區(qū)只看最后一個(gè)錯(cuò)誤。例如 Maven 報(bào)錯(cuò)一大串最后一行是Could not resolve dependencies for project ...但真正的根因可能在上面幾行的Connection reset里。所以看到下載失敗第一件事不是去改版本號(hào)而是把完整日志拉到文本文件里從最上面的異常開(kāi)始看起。大部分構(gòu)建工具會(huì)把 “cause by” 鏈打出來(lái)順著異常鏈往根上找比盯著最后一行猜要高效得多。為了更直觀我做了一個(gè)簡(jiǎn)單的報(bào)錯(cuò)分類表報(bào)錯(cuò)層級(jí)典型關(guān)鍵字說(shuō)明網(wǎng)絡(luò)層Connection timed out / Connection reset / UnknownHost多為網(wǎng)絡(luò)連不通或連接被切斷倉(cāng)庫(kù)層403 / 404 / Checksum mismatch / Could not transfer倉(cāng)庫(kù)地址不對(duì)、權(quán)限不足或文件損壞本地環(huán)境層No space left on device / Permission denied本地磁盤(pán)滿、緩存目錄無(wú)權(quán)限這張表可以先截圖存著遇到報(bào)錯(cuò)先對(duì)號(hào)入座別上來(lái)就清緩存換版本。1.2 先做一次干凈的“最小復(fù)現(xiàn)”我在排查這類問(wèn)題的時(shí)候不會(huì)直接在完整項(xiàng)目里一遍遍構(gòu)建而是先用一個(gè)空目錄建一個(gè)最小工程只加一個(gè)依賴去下載。這樣能排除大量無(wú)關(guān)干擾比如項(xiàng)目里其他依賴的版本沖突、多模塊構(gòu)建順序、代碼編譯器版本等。這個(gè)最小復(fù)現(xiàn)工程不要用公司內(nèi)部代碼就用一個(gè)簡(jiǎn)單的示例庫(kù)坐標(biāo)com.example:demo-lib:1.0.0如果沒(méi)有就用項(xiàng)目里報(bào)錯(cuò)的那個(gè)依賴刪掉其他依賴單獨(dú)構(gòu)建。比如 Maven 項(xiàng)目可以開(kāi)一個(gè)空目錄寫(xiě)一個(gè)只有一個(gè)依賴的pom.xml然后執(zhí)行mvn dependency:get -Dartifactcom.example:demo-lib:1.0.0如果只下載一個(gè)依賴都失敗說(shuō)明問(wèn)題出在網(wǎng)絡(luò)、倉(cāng)庫(kù)或本地緩存跟業(yè)務(wù)代碼無(wú)關(guān)如果這個(gè)依賴能下載成功再把項(xiàng)目里的其他依賴逐個(gè)加入很快就能定位到是哪一步開(kāi)始失敗的。這個(gè)“逐層加依賴”的過(guò)程看似笨但它能精準(zhǔn)地把問(wèn)題隔離到某個(gè)具體坐標(biāo)上后續(xù)修復(fù)就有靶子了。記錄日志也很關(guān)鍵。我一般會(huì)把輸出同時(shí)保存一份mvn dependency:get -Dartifactcom.example:demo-lib:1.0.0 -X download-debug.log-X會(huì)輸出調(diào)試級(jí)別的日志雖然長(zhǎng)但里面會(huì)包含實(shí)際請(qǐng)求的倉(cāng)庫(kù)地址、走了哪個(gè)鏡像、用了多長(zhǎng)時(shí)間才超時(shí)等信息。這些信息平時(shí)看不見(jiàn)排查下載問(wèn)題的時(shí)候特別有用。前提是日志里如果包含私有倉(cāng)庫(kù)地址注意別隨手粘貼到公開(kāi)渠道防止信息外泄。1.3 看超時(shí)時(shí)間判斷是“慢”還是“死”如果報(bào)錯(cuò)里有Read timed out或connect timed out還要再看具體超時(shí)時(shí)間。默認(rèn)的超時(shí)時(shí)間可能很長(zhǎng)本地一個(gè)依賴幾十分鐘下不來(lái)最后才報(bào)錯(cuò)。這種情況看起來(lái)像“死掉”其實(shí)只是“慢”。我習(xí)慣在配置里把超時(shí)稍微調(diào)大但不建議調(diào)到無(wú)限大否則一個(gè)壞依賴會(huì)卡住整個(gè)構(gòu)建好幾個(gè)小時(shí)。更實(shí)用的是觀察下載速度如果下載到某個(gè) jar 包時(shí)速率一直在幾十 KB 徘徊大概率是倉(cāng)庫(kù)給的帶寬很緊張如果請(qǐng)求發(fā)出去立刻失敗那大概率是網(wǎng)絡(luò)鏈路不通。判斷完類型之后再往下找原因就清晰多了。下面我把常見(jiàn)原因挨個(gè)拆開(kāi)講。2. 依賴庫(kù)下載失敗的常見(jiàn)原因逐個(gè)拆解2.1 倉(cāng)庫(kù)地址與鏡像配置不靠譜很多項(xiàng)目默認(rèn)依賴官方公共倉(cāng)庫(kù)但在某些網(wǎng)絡(luò)條件下官方倉(cāng)庫(kù)下載效率確實(shí)不理想。于是大家會(huì)配置鏡像倉(cāng)庫(kù)。鏡像配置本身不復(fù)雜但容易出問(wèn)題的地方在于只配置了 release 倉(cāng)庫(kù)snapshot 倉(cāng)庫(kù)還是走官方或者倉(cāng)庫(kù)順序?qū)懙貌粚?duì)每次構(gòu)建都先嘗試慢的那個(gè)等超時(shí)之后才降級(jí)到快的那個(gè)白白浪費(fèi)時(shí)間還有的鏡像倉(cāng)庫(kù)同步不及時(shí)明明依賴已經(jīng)發(fā)布到官方倉(cāng)庫(kù)鏡像上卻找不到于是報(bào) 404。我見(jiàn)過(guò)最典型的場(chǎng)景是項(xiàng)目里有多個(gè) repository第一個(gè)倉(cāng)庫(kù)填了一個(gè)已經(jīng)失效的內(nèi)網(wǎng)地址第二個(gè)才是能用的公共鏡像。構(gòu)建時(shí)第一個(gè)倉(cāng)庫(kù)連接超時(shí)等半天之后才去第二個(gè)導(dǎo)致每次全量構(gòu)建都很慢還頻繁報(bào)下載失敗。這種問(wèn)題用-X日志能看到請(qǐng)求順序調(diào)整倉(cāng)庫(kù)順序或者直接用鏡像把所有倉(cāng)庫(kù)都“接管”過(guò)來(lái)基本能解決。以 Maven 為例settings.xml里可以使用 mirror 把中央倉(cāng)庫(kù)指向鏡像示例配置如下注意這里的地址是示例實(shí)際換成你們環(huán)境里可用的倉(cāng)庫(kù)地址settings mirrors mirror idexample-mirror/id nameExample Mirror/name urlhttps://mirror.example.com/repository/maven-public//url mirrorOfcentral/mirrorOf /mirror /mirrors /settingsmirrorOf是核心它指定這個(gè)鏡像要替代哪個(gè)倉(cāng)庫(kù)。寫(xiě)central表示只替代中央倉(cāng)庫(kù)寫(xiě)*表示匹配所有倉(cāng)庫(kù)但有內(nèi)網(wǎng)私有倉(cāng)庫(kù)時(shí)千萬(wàn)別用*否則會(huì)把私有倉(cāng)庫(kù)也吞掉。這種配置錯(cuò)誤很隱蔽經(jīng)常導(dǎo)致私有依賴突然下載不到。2.2 緩存把壞包“腌入味”了依賴管理器都會(huì)在本地留緩存本意是加速但一旦之前下載失敗可能會(huì)留下?lián)p壞的臨時(shí)文件。最典型的是 Maven 倉(cāng)庫(kù)里出現(xiàn).lastUpdated后綴的文件還有_remote.repositories記錄里保存了失敗狀態(tài)npm 的 cache 里可能留下不完整的 tarballpip 的 http cache 也可能緩存了損壞的 wheel。當(dāng)你再次構(gòu)建時(shí)工具一看本地有緩存就不再重新下載或者只拿到一個(gè)無(wú)效的元數(shù)據(jù)文件于是反復(fù)失敗。有一個(gè)經(jīng)典現(xiàn)象同事那里下載正常你這邊同一份代碼就是不行。很多時(shí)候不是網(wǎng)絡(luò)差異而是你本地緩存里已經(jīng)存了失敗狀態(tài)。Maven 里可以強(qiáng)制更新快照mvn clean install -U-U會(huì)強(qiáng)制讓 SNAPSHOT 依賴和元數(shù)據(jù)重新檢查更新但注意它不會(huì)自動(dòng)刪除損壞的 jar 或.lastUpdated文件。如果-U沒(méi)用就需要找到對(duì)應(yīng)依賴的緩存目錄手動(dòng)刪掉。Maven 默認(rèn)在~/.m2/repository下按坐標(biāo)路徑存放比如com.example:demo-lib:1.0.0就在~/.m2/repository/com/example/demo-lib/1.0.0/。刪掉該目錄后再重新構(gòu)建一般就能拉回來(lái)。Gradle 的緩存更復(fù)雜分成~/.gradle/caches/modules-2/files-2.1/...和~/.gradle/caches/transforms-*。直接刪整個(gè)~/.gradle/caches很粗暴會(huì)連項(xiàng)目編譯用的其他緩存一起清掉下次構(gòu)建會(huì)慢很多。我通常只刪報(bào)錯(cuò)組件對(duì)應(yīng)目錄或者執(zhí)行./gradlew clean后再在 Gradle 里加--refresh-dependencies./gradlew build --refresh-dependencies這個(gè)命令會(huì)重新解析依賴但不一定會(huì)清理元數(shù)據(jù)緩存必要時(shí)還是手動(dòng)刪。清理緩存的具體原則我會(huì)在第三章里詳細(xì)展開(kāi)。2.3 傳遞依賴把版本樹(shù)攪成一鍋粥“配置其他的依賴庫(kù)”最常踩的坑就是你自己加的依賴沒(méi)問(wèn)題但它又引入了其它傳遞依賴而這些傳遞依賴在倉(cāng)庫(kù)里根本不存在或者版本和項(xiàng)目里現(xiàn)有依賴沖突。比如項(xiàng)目里已經(jīng)用了demo-common:1.2新引入的庫(kù)依賴demo-common:2.0構(gòu)建工具就會(huì)嘗試下載兩個(gè)版本如果倉(cāng)庫(kù)里沒(méi)有其中某一個(gè)就會(huì)報(bào)下載失敗。表面看是“下載失敗”實(shí)際上是版本解析失敗。這種問(wèn)題不能靠連續(xù)點(diǎn)重試解決。第一步是看依賴樹(shù)。Maven 用mvn dependency:tree -DverboseGradle 用./gradlew dependencies --configuration compileClasspath然后觀察報(bào)錯(cuò)的那個(gè)庫(kù)在樹(shù)里的路徑。如果發(fā)現(xiàn)兩個(gè)版本沖突優(yōu)先在構(gòu)建腳本里統(tǒng)一版本而不是暴力排除。例如 Gradle 里可以加全局策略configurations.all { resolutionStrategy { force com.example:demo-common:2.0 } }Maven 則可以用dependencyManagement鎖定版本。強(qiáng)制版本不是萬(wàn)能藥它只能解決“版本統(tǒng)一”如果依賴庫(kù)本身需要某個(gè)不存在的倉(cāng)庫(kù)還是得回到倉(cāng)庫(kù)配置上。這個(gè)先后順序要拎清。2.4 認(rèn)證、證書(shū)和安全策略惹的禍下載私有倉(cāng)庫(kù)里的依賴時(shí)最常見(jiàn)的失敗原因之一是沒(méi)有正確配置倉(cāng)庫(kù)認(rèn)證。倉(cāng)庫(kù)返回 401 或 403但日志不會(huì)直接告訴你“密碼不對(duì)”它可能包裝成Could not transfer artifact。有的項(xiàng)目把用戶名密碼寫(xiě)在pom.xml里這樣做雖然能跑但很容易泄露而且改密碼后要重新提交代碼更穩(wěn)妥的是配置在 Maven 的settings.xml的servers節(jié)點(diǎn)中。證書(shū)問(wèn)題也很隱蔽。有些內(nèi)部倉(cāng)庫(kù)用的證書(shū)不是正規(guī) CA 簽發(fā)的Java 這邊默認(rèn)校驗(yàn)證書(shū)就會(huì)報(bào)SunCertPathBuilderException或PKIX path building failed。不少人第一反應(yīng)是關(guān)掉 SSL 校驗(yàn)這種做法我強(qiáng)烈不建議等于把安全壁壘拆了。正確做法是把內(nèi)部倉(cāng)庫(kù)的根證書(shū)導(dǎo)入 JDK 的cacerts證書(shū)庫(kù)。npm 那邊類似strict-sslfalse也能繞過(guò)檢查但同樣不該在生產(chǎn)項(xiàng)目里長(zhǎng)期使用。如果必須臨時(shí)用記得在本地.npmrc里改不要提交到公共代碼庫(kù)。這里多說(shuō)一句遇到證書(shū)問(wèn)題先別懷疑代碼先把倉(cāng)庫(kù)地址在瀏覽器里打開(kāi)看看如果瀏覽器都提示不安全那基本就是證書(shū)鏈路的問(wèn)題。瀏覽器都能訪問(wèn)且證書(shū)正常再回到依賴管理器配置里找原因。3. 一套可以直接照抄的排查與修復(fù)流程3.1 先給依賴管理器一個(gè)明確的“出路”排查到最后大多數(shù)問(wèn)題都出在“依賴管理器不知道去哪里下載”。所以修復(fù)的第一步不是清緩存也不是改版本而是把倉(cāng)庫(kù)地址梳理清楚。我建議先確認(rèn)下面幾件事項(xiàng)目里用到的所有倉(cāng)庫(kù)地址現(xiàn)在是否還能訪問(wèn)有沒(méi)有統(tǒng)一的公共鏡像地址可以替換默認(rèn)官方倉(cāng)庫(kù)快照和正式版本的倉(cāng)庫(kù)是否分別配置正確私有倉(cāng)庫(kù)的認(rèn)證信息是否已經(jīng)配置在用戶級(jí)配置里。這里有個(gè)原則倉(cāng)庫(kù)地址寧可少而穩(wěn)不要多而雜。我有次為了“加速”在項(xiàng)目里堆了好幾個(gè)鏡像地址結(jié)果構(gòu)建時(shí)每個(gè)倉(cāng)庫(kù)都試一遍最后還因?yàn)榘姹静灰恢聦?dǎo)致下載失敗。后來(lái)只保留一個(gè)鏡像加一個(gè)私有倉(cāng)庫(kù)反而又快又穩(wěn)。對(duì)于大多數(shù)團(tuán)隊(duì)項(xiàng)目有一個(gè)同步及時(shí)的公共鏡像加一個(gè)內(nèi)網(wǎng)私有倉(cāng)庫(kù)存放公司內(nèi)部庫(kù)就足夠了。配置順序也要注意公共鏡像放在前面私有倉(cāng)庫(kù)放在后面或者用 mirror 統(tǒng)一接管。不要把一個(gè)容易超時(shí)的倉(cāng)庫(kù)排在第一位。這部分沒(méi)有標(biāo)準(zhǔn)答案但原則是讓最快最可靠的倉(cāng)庫(kù)先被訪問(wèn)。3.2 Maven 和 Gradle 項(xiàng)目的倉(cāng)庫(kù)切換示例Maven 項(xiàng)目切換鏡像除了前面說(shuō)的settings.xml里配置 mirror還可以在項(xiàng)目pom.xml里聲明 repository但需要注意pom.xml里的 repository 優(yōu)先級(jí)和 settings 里的 mirror 是不同的。mirror 相當(dāng)于攔截器會(huì)影響所有倉(cāng)庫(kù)訪問(wèn)project 里聲明 repository 是直接指定。我一般建議團(tuán)隊(duì)統(tǒng)一在用戶級(jí)settings.xml里配 mirror這樣即使項(xiàng)目里寫(xiě)死了舊地址也能被鏡像接管。關(guān)于私有倉(cāng)庫(kù)的認(rèn)證可以在settings.xml里配置serverssettings servers server idprivate-repo/id usernamedeploy-user/username passwordencrypted-password/password /server /servers /settingsGradle 項(xiàng)目則是在build.gradle里配置repositories { maven { url https://mirror.example.com/repository/maven-public/ } maven { url https://repo.example.com/private-releases/ credentials { username deploy-user password encrypted-password } } }注意mavenLocal()要慎重它會(huì)優(yōu)先使用本機(jī)~/.m2/repository里已有的包。如果本機(jī)緩存里正好有一個(gè)不對(duì)的版本即使遠(yuǎn)程倉(cāng)庫(kù)有正確版本它也會(huì)優(yōu)先用本地的從而出現(xiàn)“本地能用、CI 不能跑”的幽靈問(wèn)題。團(tuán)隊(duì)協(xié)作時(shí)我習(xí)慣把它注釋掉。改完倉(cāng)庫(kù)配置后建議執(zhí)行一次mvn clean install -U或./gradlew clean build --refresh-dependencies確認(rèn)下載是否恢復(fù)。3.3 npm 和 pip 的快速修復(fù)套路前端項(xiàng)目里 npm 下載失敗通常先從.npmrc入手。項(xiàng)目根目錄.npmrc可以臨時(shí)覆蓋用戶級(jí)配置但注意里面寫(xiě)的倉(cāng)庫(kù)地址會(huì)隨代碼提交如果里面包含內(nèi)部倉(cāng)庫(kù)地址別公開(kāi)倉(cāng)庫(kù)。一個(gè)常見(jiàn)的.npmrc示例registryhttps://registry.example.com/ fetch-retries3 fetch-retry-factor2 fetch-retry-mintimeout10000 fetch-retry-maxtimeout60000如果之前下載失敗留下了壞緩存可以執(zhí)行npm cache clean --force rm -rf node_modules npm install這里我要特別說(shuō)明package-lock.json不要隨便刪除非你已經(jīng)確定是鎖文件里的某個(gè) resolved 地址失效了。直接刪掉鎖文件會(huì)導(dǎo)致所有依賴版本重新解析項(xiàng)目里其他同事用的版本可能和你不一樣容易埋雷。更安全的做法是刪掉node_modules和 npm 緩存保留鎖文件重新安裝如果鎖文件里的 resolved 地址確實(shí)訪問(wèn)不了再編輯鎖文件或重新生成。Python 項(xiàng)目用 pip 時(shí)最常見(jiàn)的下載失敗是超時(shí)和Could not find a version that satisfies the requirement。可以先把索引切到公共鏡像然后在命令里加pip install --no-cache-dir -r requirements.txt -i https://pypi.example.com/simple--no-cache-dir能跳過(guò)本地緩存適合排查“緩存了壞包”的情況。但每次都加參數(shù)太啰嗦可以用配置文件pip config set global.index-url https://pypi.example.com/simple如果某個(gè)包帶了二進(jìn)制擴(kuò)展在鏡像上沒(méi)有對(duì)應(yīng)操作系統(tǒng)的 wheel也會(huì)下載失敗。那就要檢查鏡像是否覆蓋了當(dāng)前平臺(tái)的 wheel或者臨時(shí)從項(xiàng)目官方頁(yè)面下載對(duì)應(yīng)文件。遇到這種問(wèn)題報(bào)錯(cuò)信息里通常會(huì)提到Looking in links或No matching distribution需要多看兩行別死盯最后一行。3.4 清理緩存時(shí)要守住“最小范圍”原則新手遇到下載失敗喜歡直接刪整個(gè)緩存目錄比如把整個(gè)~/.m2/repository或node_modules刪掉這雖然經(jīng)常能解決問(wèn)題但代價(jià)很大。全量重建會(huì)觸發(fā)大量依賴重新下載萬(wàn)一網(wǎng)絡(luò)本來(lái)就不穩(wěn)定反而陷入“越刪越失敗”的循環(huán)。正確做法是針對(duì)報(bào)錯(cuò)的那一個(gè)依賴精準(zhǔn)清理。先定位錯(cuò)誤里提到的組件名再到本地緩存目錄找到對(duì)應(yīng)子目錄刪除。對(duì)于 Maven刪除坐標(biāo)目錄后下一構(gòu)建會(huì)自動(dòng)重新下載對(duì)于 Gradle刪除modules-2下對(duì)應(yīng)組件目錄對(duì)于 npm可以先npm cache clean --force再刪node_modules里的對(duì)應(yīng)包pip 刪除對(duì)應(yīng)包后再用pip install --no-cache-dir。還有一個(gè)容易忽略的點(diǎn)磁盤(pán)滿了。萬(wàn)一用戶目錄所在分區(qū)可用空間不夠下載一半會(huì)報(bào)No space left on device。這種報(bào)錯(cuò)看日志會(huì)給人一種“依賴壞了”的錯(cuò)覺(jué)其實(shí)是寫(xiě)不進(jìn)去。檢查一下各分區(qū)空間把大緩存目錄清一輪問(wèn)題立解。所以“清理緩存”不光是清理壞包也是給下載騰空間。4. 常見(jiàn)問(wèn)題速查與避坑經(jīng)驗(yàn)4.1 下載失敗問(wèn)題速查表我把實(shí)際以及身邊同事遇到過(guò)的依賴下載失敗問(wèn)題整理成了速查表方便以后直接對(duì)照。現(xiàn)象可能原因優(yōu)先排查方向連接超時(shí)倉(cāng)庫(kù)網(wǎng)絡(luò)慢、倉(cāng)庫(kù)地址不通、超時(shí)設(shè)置太短換鏡像、增加超時(shí)、確認(rèn)地址可訪問(wèn)403/401私有倉(cāng)庫(kù)認(rèn)證失敗、賬號(hào)過(guò)期更新認(rèn)證信息不要寫(xiě)在項(xiàng)目里404依賴不存在、鏡像未同步、版本號(hào)拼寫(xiě)錯(cuò)誤檢查版本是否存在、切到官方倉(cāng)庫(kù)確認(rèn)Checksum mismatch下載文件損壞、鏡像同步出錯(cuò)刪除緩存重下、換另一個(gè)鏡像PKIX path building failed證書(shū)鏈不被信任導(dǎo)入根證書(shū)不建議關(guān)掉校驗(yàn)No space left on device磁盤(pán)滿了清理緩存目錄、擴(kuò)大分區(qū)Could not resolve dependencies傳遞依賴缺失或版本沖突看依賴樹(shù)統(tǒng)一版本或補(bǔ)倉(cāng)庫(kù)這張表覆蓋了八成以上的“總是下載失敗”場(chǎng)景。剩下兩成往往需要把-X日志發(fā)給包維護(hù)者或倉(cāng)庫(kù)管理員讓熟悉環(huán)境的人看一眼請(qǐng)求鏈路才能定位。4.2 我從實(shí)際項(xiàng)目里總結(jié)的六條避坑清單第一不要為了“快”把超時(shí)時(shí)間調(diào)到無(wú)窮大。你等一個(gè)壞依賴一小時(shí)不如花十分鐘把根因查出來(lái)。超時(shí)是安全繩不是用來(lái)背鍋的。第二修改倉(cāng)庫(kù)配置后一定要強(qiáng)制刷新。Maven 里光改settings.xml還不夠要執(zhí)行mvn -U。為什么因?yàn)楸镜鼐彺娴脑獢?shù)據(jù)可能已經(jīng)記錄了“這個(gè)版本不存在”或“這個(gè)倉(cāng)庫(kù)不可用”不強(qiáng)制刷新構(gòu)建還是會(huì)走舊路徑。第三不要把私有倉(cāng)庫(kù)的密碼提交到代碼倉(cāng)庫(kù)。即使項(xiàng)目能在你機(jī)器上跑別人克隆下來(lái)也大概率會(huì)報(bào)認(rèn)證失敗。配置settings.xml或環(huán)境變量既能保證不同環(huán)境差異又不會(huì)泄露秘密。第四不要看到版本沖突就無(wú)腦排除。先看依賴樹(shù)確認(rèn)沖突的根節(jié)點(diǎn)是誰(shuí)。有些沖突只需要把兩個(gè)依賴的版本統(tǒng)一并不需要排除傳遞依賴如果排除錯(cuò)了反而會(huì)丟類報(bào)NoClassDefFoundError。第五同一個(gè)依賴不要在多個(gè)倉(cāng)庫(kù)里各放一份“差不多”的版本。很多下載失敗其實(shí)是倉(cāng)庫(kù)之間的內(nèi)容不一致造成的你在這個(gè)倉(cāng)庫(kù)能找到 1.0.1那個(gè)倉(cāng)庫(kù)只有 1.0.0構(gòu)建時(shí)拿到哪個(gè)完全取決于排序。公司內(nèi)部盡量統(tǒng)一一個(gè)私有倉(cāng)庫(kù)作為權(quán)威源。第六鎖文件是團(tuán)隊(duì)協(xié)作的“契約”。npm 的package-lock.json、pip 的requirements.txt鎖版本、Maven 的dependencyManagement這些機(jī)制就是為了防止依賴漂移。遇到下載失敗別急著刪鎖文件先確認(rèn)鎖文件里的地址是不是還活著。5. 把“下載失敗”擋在項(xiàng)目啟動(dòng)前5.1 項(xiàng)目啟動(dòng)時(shí)先做一次依賴健康檢查我在處理這類問(wèn)題的過(guò)程中慢慢養(yǎng)成一個(gè)習(xí)慣每次新項(xiàng)目開(kāi)始先把倉(cāng)庫(kù)源和依賴清單固定下來(lái)而不是等到下載失敗才回頭折騰。具體說(shuō)就是項(xiàng)目啟動(dòng)時(shí)花五分鐘檢查默認(rèn)鏡像是否可用私有倉(cāng)庫(kù)地址和認(rèn)證是否寫(xiě)到用戶級(jí)配置里依賴版本不要用不帶版本號(hào)的latest或盡量用鎖文件或父工程管理版本。這樣后面省下的時(shí)間遠(yuǎn)遠(yuǎn)超過(guò)這五分鐘。這個(gè)檢查不需要太復(fù)雜新建一個(gè)空項(xiàng)目加入一個(gè)你最常用的依賴執(zhí)行一次安裝命令。如果這一步順利說(shuō)明基礎(chǔ)倉(cāng)庫(kù)鏈路沒(méi)問(wèn)題。之后每加一個(gè)重量級(jí)新依賴都要留意它是否帶了一堆額外的傳遞依賴避免把版本樹(shù)攪亂。5.2 CI 里把依賴緩存當(dāng)一等公民對(duì)待很多人只在本地開(kāi)發(fā)時(shí)關(guān)心依賴下載卻忽略了 CI 環(huán)境。CI 每次從零裝依賴非常耗時(shí)也更容易觸發(fā)下載失敗因?yàn)?CI 的網(wǎng)絡(luò)和本機(jī)往往不一樣。我習(xí)慣把依賴緩存目錄加入 CI 的緩存策略比如 Maven 緩存~/.m2/repositoryGradle 緩存~/.gradle/cachesnpm 緩存~/.npmpip 緩存~/.cache/pip。這樣下次構(gòu)建能復(fù)用大部分依賴只有真正變化的包才會(huì)重新下載。不過(guò)緩存也要設(shè)上限否則 CI 緩存目錄會(huì)越滾越大最終因?yàn)槿萘繂?wèn)題被清理掉等于白配。另外緩存策略要綁定倉(cāng)庫(kù)源如果換了鏡像舊緩存里的“失敗記錄”可能會(huì)繼續(xù)影響新構(gòu)建所以 CI 里倉(cāng)庫(kù)配置要和本地保持一致。還有一個(gè)小技巧Maven 項(xiàng)目可以在 CI 里先跑一次mvn dependency:go-offline把依賴提前拉到本地緩存后續(xù)構(gòu)建速度會(huì)明顯提升。5.3 一點(diǎn)關(guān)于排查節(jié)奏的個(gè)人體會(huì)最后說(shuō)說(shuō)心態(tài)。依賴下載失敗這種問(wèn)題最怕連續(xù)無(wú)腦點(diǎn)重試。我給自己定過(guò)一個(gè)規(guī)矩同一個(gè)問(wèn)題連續(xù)重試不超過(guò)三次。第一次看完整日志確認(rèn)錯(cuò)誤層級(jí)第二次看本地緩存確認(rèn)是不是壞包或失敗記錄第三次查倉(cāng)庫(kù)配置和版本策略。如果三次還沒(méi)定位到就把日志存好離開(kāi)工位休息一下。因?yàn)橐蕾噯?wèn)題往往牽涉到網(wǎng)絡(luò)、證書(shū)、私有倉(cāng)庫(kù)同步等“看不見(jiàn)”的因素硬剛效率很低。但只要你把日志留好休息一會(huì)兒再回頭通常會(huì)發(fā)現(xiàn)之前漏掉的某個(gè)關(guān)鍵字。依賴下載失敗這件事大多數(shù)時(shí)候都不是“運(yùn)氣不好”而是倉(cāng)庫(kù)配置、緩存狀態(tài)和版本策略三者配合出了問(wèn)題。下次再遇到“項(xiàng)目里配置其他的依賴庫(kù)卻總是下載失敗”時(shí)先別盯著紅色日志發(fā)呆從看日志層級(jí)開(kāi)始一步一步來(lái)。這套流程我已經(jīng)用了很多次基本上每次都能把問(wèn)題控制在半小時(shí)內(nèi)解決。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
超碰久久.com| 强奸国产精品视频| 美骚妇av高清在线| 中国一区二区亚洲人妻| 日本不卡二区| 男人天堂无码| 97精品久久久久中文字幕| 人、人、摸,人、人、草| 91 偷| 国产盗摄美女如厕大神作品在线观看| 人妻少妇一区二区| 青青操轻轻| 亚洲精品一二区| 校园春色亚洲色图| 大香蕉手机在线| 亚洲区小说| 夜夜高潮夜夜爽| 婷婷视频在线免费观看| 黄色香蕉视频网站一区| 欧美美女视频| 三级色影综合网| 看看日B真人视频| 在线观看A啊啊啊| 91亚洲人电影| 有码人妻系列| 人妻久热在线| 人妻天天爽夜夜爽爽| 91人妻Pr| 天天操狠狠日夜夜干超碰撸com视频在线观看| 日韩av不卡在线看| 乱伦1色页| 91精品微拍福利| 久久的免费性爱视频| 91天天综合日韩欧美| 天操天操夜操夜月月年年操操| 欧美大香蕉97| 亚欧洲一区二区视频| 亚洲色香| 超碰97人人乐| 色色九区| 天堂俺去俺来也www久久婷婷| 日本成人A片免费看| 久久久久亚洲三级电影| 国产乱伦亚洲色图高清无码| 中文精品一区二去| 国产精品久久99日日| a亚洲欧美色欲| 欧美亚洲| 伊人网综合在线视频| 欧美大香蕉专区网| 韩日精品四区| 蜜臀亚洲综合一二三四区| 日韩熟女无码| 色欲av一区二区三区蜜芽| 国产一级舔足在线观看| 黄页视频网站野外| 精品久久久久9999| 97欧美色综合| 亚洲无码超碰免费| 亚洲高潮少妇| 精品无码人妻一区二区免费蜜桃| 少妇人妻精品| 亚洲一区二区三区麻豆传媒| 国产丝袜美女在线一区| 国产精品99精品视频网站| 午夜福利1区2区3区| 国产日韩欧美操逼视频| 91九色在线| 色嘟嘟人妻天堂网| 大香蕉男人的天堂| 91日韩网站| 久久夜夜夜夜| 欧美不卡五十路| 欧美日韩色综合网| 99这里有精品| 亚洲男人天堂2017| 久久丁香久草综合网| 欧美偷拍区| 人妻熟女av国产网站| 丁香五月激情五月| 国产97在线播放| 蜜臀久久99精品久久久久久婷婷| 午夜理论片在线观看免费| 九月婷婷久久| 加勒比人妻综合| 男女一进一出视频久久| 天天干美少妇一区| 青青青草伊人精品| 国产精品 久久久精品一牛| 日本色色的视频| 国产精品久久9| 人澡逼| 日本淫乱女一区二区三区视频| 国产一级不卡在线观看| 人妻密肉在线观看| 精品久久97| 午夜a成v人电影| 国产成人网址| 97少妇人妻中文字幕久久 | 丰满人妻一区二区三区四区| 黄片免费久久久久久久| 美女AV一区二区| 亚洲影视综合| 亚洲欧美在线观看无码| 日日干男人的天堂| 亚洲 日韩 丝袜 熟女 变态| 天堂伊人久久| 欧美十八禁视频| 中文字幕日韩综合| 成人无码欧美一级A片狼牙直播| 国产午夜福利电影免费在线观看 | 蜜桃视频精品一区二区三区| 中日韩熟女| 九九操久久国产免费视频| 青草草免费网站av| 国产精品经典一卡久久久| 亚洲素人综合| 九九综合久久| 天天日天天干天天摸天天操| 国产综合网站在线播放| 亚洲系列欧美| 色999五月色| 亚洲综合性网址| 国产精品 视频| 狠狠色色| 欧美翘臀视频网站一区二区三区| 国产久久一区二区| 人妻人人做人人澡人人爽欧美一区| 91人人看| 黄片免费视频2019| 天天操天天看| www.av在线观看| 国产三级中文字幕粉嫩 | 久久精品国产免费观看99| 精国久久一区二区三区98| 欧美一级黄片视频在线| 久久综合97| 中文字幕在线日亚洲9| 国产日韩欧美亚洲精品95 | 日日摸天天爽夜夜欢| 日本高清一区二区在线| 精品国产乱码久久久久久蜜臀| 国产农村一一级特黄毛片| 麻豆国产视频精品观看| 国产乱伦视频污| 男女激情中文字幕| 日韩啪啪视频| 久久激情婷婷| 97干色天堂| 9久在线视频只有精品| 九一亚洲国产免费| 国产69精品久久久久99尤物| 亚洲丝袜少妇在线| 内射黑人| 日本三级大片| 无码操逼视频一下| 久艹99| 亚洲欧洲综合视频在线| 久久色网| 欧美一区二区三熟女剧情| 欧美激情综合| 在线看的av| 91中文字幕在线观看| 天综合网| 亚洲制服欧美另类内射| 亚洲日韩国产精品| 精品久操| 天天操天天看| 欧美黄色图片| 狠狠狠狠狠| 91P0RNY大屁股人妻| 日产成人久久| a男人的天堂| 日本道久久综合色色| 人妻精品视频一区二区三区| 精品丰满熟妇人妻一区| 久久久久久久久久黄色网 | 天天综合色电影| av绯色| 精品人妻av区天天看片| 98超碰日本| 日本有码影片下载 | 亚洲熟女乱色一区二区三区久久久| 大香网伊人久久综合| 国内精品久久久久影院亚洲| 欧美日韩操操操| 探花视频免费观看国产专区| 自拍六区| 中文字幕一区二区三区四五区| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 色官网色综合| 沈阳熟女高潮对白视频| 啊啊啊啊无码| 欧美,日韩,中文,另类| 啊啊啊啊二区好大| 久久伊人网视频一区二区三区 | 九九操久久国产免费视频| 色盈盈影院| 欧亚乱色熟一区二区三四区| 麻豆久久久一区二区| 亚洲国产一区二区三区在线| 一区二区三区美女超清| 亚洲 在线| 国产美女激情| 久久久久久久久久久久黄色 | 台湾大香蕉99热| 久久午夜伦| 国产色呦呦| 国产AV久久野战精品| 国产精品夜夜夜| 丰满搜索结果 -第18页- 久久高清无码 | 天天爽天天干| 激激五月| 亚洲熟妇无码一区二区三区| 亚洲欧洲激情| 久久久久深夜无码| 午夜后入| 91老熟女老女人国产老太| 无码人妻一区二区一牛影视| 九九碰九九爱97超碰| 亚洲欧美国产日本一区二区三区| 极品美女福利在线观看| 强奸乱伦资源| 91亚洲黑人| 国产最新AV| 熟女丰满人妻一区| 人人摸人人干| 啊啊啊啊在线播放| 亚洲第二页| 好吊色综合| 亚州一区二区| 最新av网站在线观看| 吖在线不卡一区二区国产剧情| 在线观看免费视频国产| 综合五月婷婷| 欧美综合97www| 国产丰满少妇久久久精品影院| 91超碰碰在线| 麻豆成人影音在线| 亚洲精美粉嫩嫩泬在线观看 | 丰满人妻一区二区三区四| 熟女人妻av在线资源,黄色的资源| 中文字幕一区 二区三四五 区日 日骚| 亚洲综合码| 88xx成人精品视频| 亚洲欧洲综合成人av一区| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 国产亚洲精品美女久久久m| 免费在线观看国内色片网站网址| 91精品人妻一区二区三区蜜桃臀| 超碰碰97资源站| 亚洲国产成人精品久久久国产成人一区二区| 国产一区二区免费福利片| 日本高清_区二区三区| 日韩在线观看中文字幕视频| 蜜臀AV成人精品蜜臀AV久久| 国产精品农村妇女| 天天色黄色影院天天操| 国产精品对白内射| 欧美在线大香999| 综合伊人网12色| 黄色av片三级三级三级免费看| 婷婷激情啪啪| 97欧美色综合| 亚洲午夜福利在线影院| 日韩少妇丰满亚洲| 人妻少妇精品视频一区二区三区| 亚洲色诱惑| 亚州综合色图| 欧美亚洲素人制服精品| 97久久久久久久精| 新91视频.cmp| 探花一区在线| 亚洲日韩熟女人妻高清在线| 18禁免费视频| 人妻一区久久二区三区色播| 超碰97COm中文| 天天天天天天天天天天干美女| 欧美美女在线高潮999| 亚洲美女精品九九视频| 久久精品性| 欧美国产操逼| 911av网站免费观看| 天天日天天舔东京热| 欧美黑人熟妇精品91| 国产亚洲精品农村妇女| av东京热男人的天堂| 亚洲性爱成人| 超碰97资源中文字幕| 日韩欧美传媒一区国产| 亚洲中文制服诱惑| 97精品| 亚洲日本成人动漫| 91欧美综合| 亚洲宅男天堂| 91美女视频在线观看| 九九黄色网| 精品人妻一区二区三区免费视频| 亚洲精品亚洲人成人网| 大香蕉日韩| 99色色网| 蜜臀久久99精品久久久久久酒店 | 97超碰天天爱天天爱| 中文字幕丰满人妻日本| 丰满人妻一区二区三区在线| 亚洲成a人v欧美综合天堂下载 | 精久久久| 天天看综合网| 日本操逼aaaaa| 亚洲激情 欧美色图| 国产亚洲99久久精品熟| 97精品97久久| 国产偷人妻精品一区二区在线| 日本黄色大片一级视频免费麻豆| 99国产精品自在自在| 福利在线观看一区二区| 夜夜国自区| 开心五月激情网| 神马九九| 亚洲精品白丝| 色婷婷综合网站| 久久久久久久唑| 欧美黄色图片| 九九热AV| 自拍视频一区在线观看| 97天天| 91性高| 无码国产精品午夜不卡(| 久久久精精精| 天美传媒AV国产在线| 久久鲁干| 国产黄色剧情影片麻豆免费播放| 大干人妻| 情色五月天久久久| 天天操天天舔| 岛国A V在线免费看| 精品一区二区三区四区外站| 婷婷五月天成人网| 狼狼色丁香久久婷婷综合五月| 四虎884| 69视频福利导航| 性爱av在线免费观看| 少妇综合| 精品国产乱码久久久| 色月天AV导航| 日韩一级二级| 爽 好舒服 无码刺激久久| 中国人高清www色视频免费| 日日做夜狠狠爱欧美黑人| 亚洲AV无码久久久国产精品| ,成人免费啪啪视频| 淫纸中9区| 久久久久久中文版| 最新AVzaixian| 国产三区免费在线观看| 三级激情网站| 欧美国产精品久久九九| 国产熟妇 码视频户外直播 | 午夜激情成人在线观看| 伊人天天久久动态图| 久久视频,这里只有精品| www鬼畜国产男人的天堂| 天堂8在线新版官网| jizz啪啪| 翔田千里无码一区| 欧美福利视频啊啊啊啊| 91bbb| 校园春色美腿丝袜 | 日韩不卡码| 亚洲欧洲视频小说在线观看| 亚洲中文字幕97久久精品少妇| 亚洲 一区二区 自拍| 色y情视频免费看| 激情综合网激情综合| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 日本韩欧美在线播放a| 免费伦费视频在线观看| 欧美成人四级在线播放| 成年人黄色小视频网站| 国产一级内射无挡观看| 日韩精品人妻一| 成人一级性爱| 亚洲古典另类欧美在线| 天天操天天日天天干| 91日日| 又黄又粗又硬又长又大| 色女网日韩| 亚洲影视综合网| 国产11页| 免费人人搞97| 熟女网站最新| 超碰是碰在线观看| 91热热色| 人人弄人人摸| 亚洲 日本 国产 综合| 91影库| 中文字幕aⅴ在线视频| 国产一区二区三区导航| 五月色网| 91 丝袜在线| 中文字幕AV片| 午夜福利合集| 亚洲 无码 偷拍| 日韩成人精品| 91精品大奶人妻| 亚洲麻豆精品二区三区| 亚洲自拍一区夜夜操| 亚洲综合图片在线| 揉揉揉夜夜| 青草综合| 日va操| 亚洲av乱伦色图网站| 大香蕉啪啪网| 四虎免费看黄| 久久超碰com| 国产毛片毛片4p懂色| 东北丰满熟女国产一区| 五月天大香蕉| 亚洲一区二区专区-国产丝袜精品丝袜-成人AV| 亚州国产成人精品女人久久 | 香蕉人人操tv| 精品大久久| 成人欧美日超碰| 2017天天插| 精品国产91内射久久| 亚洲黄色网址视频| 日本人妻一区二区| 96精品久久久| 人妻二区| www.色婷婷| 精品人妻一区二区乱码一区二区| 亚欧美色| 97干在线| 男人天堂网手机版婷婷| 午夜舔阴达高潮视频免费看| 国产CHASE男男GAYGA 毛多色婷婷| 天天添天天干电影| 物业黑人 AV一区| 凹凸视频在线一区二区| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 加勒比色99999| 国产成人精品必看| 精品视频123区小说区| 一区二区不卡免费| 无码免费在线观看黄色片| 69人妻精品一区二区绯色| 欧美情色男人的天堂| 91欧美综合| 国产女性无套 免费观看| 二对二中文字幕。| 搡老女人老熟女91| 好爽要喷了| 日本性交操一区二区不卡系列| 人妻少妇色综合| 一区二三区四区视频大全套| 精品国产一区二区三区四区在线看| 麻豆60秒| 嗯嗯啊好爽| 色丁香久久| 中文字幕精品三级久久久| 又粗又长又爽在线观看| 成人熟女区| 精品高清av中文字幕| 久久天天性久久伊人| 九九操久久国产免费视频| 亚洲国产欧美中日韩成人综合视频| 韩日巨乳美女免费视频在线观看| 亚洲密乳AV| 国产成人AV麻豆| 欧美性生活男人的天堂| 91天美传媒精品| 啪啪性爱免费视频| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 国产精品久久久久久9999| 97精品熟女少妇一区| 欧美aⅴ99久久黑人专区| 国产一区二区三区免费视频在性观看| 欧美狠狠操| 日韩精品一区二区高清| 日韩78m视频| 国产一区在线观看无码AV| 精品小视频在线| 欧美色视频在线| 粉嫩久久久久| 在线国产一区二区av| 日夜尻逼网| 开心五月婷婷激情| 天天综合-91入口| www.四虎在线| 日本视频一区二区三区| 天天躁日日躁狠狠狠躁| 欧美性猛交美女自慰91| 成全动漫视频观看免费下载| 色欧洲97| 激情久久久| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 九九九只有精品| www.色五月| 一级做受视频免费是看美女| 丝袜美女诱惑 91 视频| 婷婷激情综合网| 搡老熟女免费视频| 在线五区| 中文字幕一区 二 区 三 四 五 区日 日 骚 | 国产粉嫩出水在线播放| 超碰97亚洲| 亚州春色| 色综合一区二区三巨| 人人操我人人干| 亚洲 欧美 日本 国内 首页| 1024亚洲中文字幕久在线看片你懂的| 精品亚洲国产成人精品| 91青青草| 天天碰久久入| 麻豆天美传媒在线视频天堂| 色五月综合网| 日韩性爱1级片视频| 五月天精品| 蜜臀AV成人精品蜜臀AV久久| www.丁香五月| 日日操丁香五月天| 亚洲网站一区二区在线| 黑白配性爱AV成| 日韩精品99久久久久久中文字幕| 久9综合在线| 无码一区二区三区四区五区六区七区八区九区十区视频 | 777超碰| 日本中文字幕熟妇| 麻豆久久久久久久久丝袜| 一区在线国产播放| 亚洲精品尤物yw在线影院| 亚洲精品91| 四虎影视永久在线观看精品免费网站 | 久久精品亚洲婷婷| 日本综合色图| 这里只有精品视频在线| 久久精品老司| 欧美一区91大爱| 亚洲日韩成人性爱视频| a一区二区三区乱码在线| 97天天综合| 97在线视频免费看| 97chaopenrihan| 激情人妻另类| 91欧美丨精品丨入口| 韩国轻伦国内自拍一区| av优播| 欧美色图天堂在线| 亚洲天堂电影精品一区| 丁香六月婷婷久久综合| 五月丁香综合啪啪| 97最新在线播放视频| 日本性爱少妇| 亚洲欧美精品福利在线| 色婷网| 日本三级韩三级99久久| 亚洲中文字幕av| 亚洲欧美经典一区二区| 婷婷精品视频| 人妻熟女一区在| 人妻天堂综合网| 日韩国语字幕| 日韩中字av一区| 天天摸夜夜摸| 欧美久久婷婷| 精品欧美日韩在线观看| 热G综合热G中文| 97久操| 综合色好色| 亚洲中字幕日本一区二区三区| 国产精品久久久| 国产在线观看一区二区三区| 涩涩涩综合| 国产三级多多影院2022国产AA一级毛片无码| 中文字幕一二区二三区人妻专区| 无码精品一区二区三区潘金莲| 日本一区二区三区四区免费观看| 91丨九色丨国产打屁股| 亚洲综合97中文网| 色超碰综合| 久久久久久久综合,国产| 呻吟 欧美 日本 中出| 欧美午夜熟妇黑人精品91| 天堂亚洲欧美| 国产精品国产亚洲区艳妇糸列| 操屄日韩| 日韩不卡毛片Av免费高清| 国产精品熟女乱伦| 厕所偷拍在线| 中文字幕诱惑制服人妻丝袜美丝袜美 | 国产精品亚洲四五区在线观看| 色九九九九| 欧美黑人168页欧美黑人167| 91殴美| 精品成人亚洲午夜电影| 欧美精品99久久久| 磁力99AV| 花花AV导航| 欧美一级美片在线观看免费| 天堂8在线新版官网| 青青操97| 懂色av中文字幕| 亚洲麻豆av一区二区| 日本一区二区不卡精品| 久久久工口| 91在线丝袜| 人人操人人干xxx| www.色婷婷色综合| 麻豆天美制片厂网站视频| 天天爽入口| 桃花色综合影院| 久久婷婷亚洲| 在线小视频| 在线视频免费观看午夜| 亚洲中文字母在线播放| 色综合加勒比四四季| 熟女少妇一区二区三区| 国产操伦| 人妻天天爽夜夜爽精品2| 国产午夜福利合集| 亚洲欧洲综合av在线| 美中韩AV综合网| 日产精品久久久一区二区| 亚洲综合另类小说色区亚洲成av人片在www | 亚洲欧美在线观看2021| 久热精品色情| 国产精品高潮久久久无码| 操逼网站地址| 国产性爱欧美性爱在线| 国产综合在线视频网站| 美女啊啊啊啊啊啊啊| 超碰4A| 亚洲黄色网址视频| 91精品国久久久久久无码| 超碰在线人人射| 五月丁香婷婷综合| 亚洲欧美综合网| 爆操无码| 好色美女九七第一页| 国产高清精品一区二区三区毛片 | 99rre在线精品99re8| 欧美性爱18观看| 91狠狠狠| 丰满的三级少妇欧美久久久| 精品人妻伦一区二区三区久久| 久久久久久久伊人精品| 久久人人爽爽爽人久久久| 精品久9| 午夜大香蕉| 国产精品日日摸天天碰| 香蕉久久国产AV一区二区| 亚洲欧美天| 日韩操人| 91狠狠综合网| 久久久久久中文字幕中文字幕最新| 婷婷激情四射| 欧美嫩性色| 久久久久久网址| 久久9精品视频| 最新无码国产| 欧美 综合 亚洲| 国产一区在线免费播放| 中文字幕免费在线观看| 99热思思| 亚洲精品一二牛牛| 少妇99| 韩国一级做A片免费的| 素人伊尹大香蕉免费下载视频| 9色在线| 少妇综合网| 刺激精品视频| 国产 v乱码一区二| 天天综合官网| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 十八禁av无码免费网站APP| 9长久久精品| 女人被添高潮免费视频 | 精品视频久久久久九九九九9999| 无码天堂| 久久综合久色欧美综合狠狠| 久久亚洲婷婷| 视频一区二区免费在线| 久久亚码| 67914亚洲精品| 日本 色 导航| 久久岛国| 美美91成人国产精品欧美精品久久久久久久| 探花在线免费观看视频国产一区| 91 偷| 天美欧美国产| 色五月激情网| 国产成人午夜视频网址| 97亚洲色图| 97色涩| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 九九热这里只有在线精品视 伊人草 成人菠萝蜜视频在线观看 | 操b在线观看| 熟女熟妇伦久久影院毛片一区二区| 亚洲色图久久精品蜜| 免费超碰97在线观看| 玖玖久久久| 超碰午夜| 97爱爱影院| 91碰碰碰| 色综合av男人天堂| 久久久国产av美女私房| 97久久超碰亚洲| 极品后入免费视频| 亚洲日产专区| 亚洲精品日韩国产欧美| 国产精品久久久久久久电影渣男| 一二三区精品视频| 97欧美色综合| 亚洲色图国产另类| 99r九九| 五月丁香婷婷啪啪| 日韩三级天堂在线观看| 爱妃国产亚洲视频中文字幕| 天堂性色| 中文字幕视频二区| 校园春色美腿丝袜| 少妇一区二区三区| 综合色久欲| 好舒服视频| 夜夜嗨av午夜成人| 91在线综合网| 久久国产精品一级二级三级| 久久久久久AⅤ无码免费肉站| 免费一级性爱久久| 欧美精品久久96人妻无码| 欧美宗合色| 极品人妻少妇综合| 91狠狠狠| 亚洲激情久久久伊人综合| 欧美色图人妻| 天美传媒av一区二区| 第二页中文字幕| 亚洲国产一区二区三区在线| 久99久视频精选| 欧美久久九九| 亚洲人精| 嗯嗯嗯不要不要免费视频| 成人影 天天操 亚洲| 奸色色 男人天堂 天天射| 一区二区 韩日AV| 色五月婷婷麻豆在| 亚洲中文制服诱惑| 哈哈操电影AV| 超碰97最新人妻| 欧美精品久久| 67914在线兔费成人视频| 国产精品高朝久久久久久久| 人妻人久久精品中文字幕| 国产日产欧产美韩系列麻豆免费| 日韩欧美中文字亚洲慕| 校园春色 亚洲| 欧美亚洲手机在线| 麻豆久久精品亚洲精品88| 日韩肏逼视频| 国产成人自拍视频视频| 干干干天天| 熟女人妻一区二区三区| 大香蕉啪啪网| 欧美亚洲第1页| 蜜臀久久99精品| 天天操福利视频综合网站| 青娱乐休闲视频在线观看| 免费观看网黄| 天堂中文资源在线bt| 色999五月色| 久久精品视频久久久| 亚洲综合有玛| 欧美一区二区三熟女剧情| 嗯嗯啊啊啊好爽| www熟女乱伦com| 强奸乱伦av电影| 女优视频第10页| 99热导航| 热热色中文无码| 日本精品网站在线中文| 懂色AV蜜臀无码精品APP | 怡红院成人视频| 亚洲在线网站| 免费综合亚洲中文| 78p欧美| 精久久久| 内射小黄片| 日韩在线观看中文字幕视频| 91人妻视频| 一卡二卡在线播放| 成人无码在线超碰网| 国产欧美一区激情交| 男人的天堂成人的社区| 欧美偷| 国产精品一区二区亚洲人成毛片| 色爱三区| 天天干天天日天天射黄色片| 91精品久久久久| 91丨豆花丨熟女| 99热这里只有精品99| 性爱AV天堂| 97精品免费视频网站| 免费αⅴ在线观看| 91九久| 97ai亚洲| 日韩av在线免费网站| 伊人97色天使| 蜜臀99久| 日韩婷婷| 国产丸一视频| 人妻一区二区三区视频| 日韩AV一区二区三区四四| 欧美丝袜美女电影一二三四区| 国产精品视频内谢女人| 国产精品自产拍在线观看社区| 亚洲丝袜色图| 日本欧美中文字幕| 依人大香蕉| 白嫩白嫩的午夜九久久久久久久久久久久成人剧场 | 看免费一级在线播放毛片| 狠狠综合| 国产9熟妇视频网站| 国产精品一级片在线看| 国产精品久久久久久久久久久久久久久久久久 | 国产噜噜噜噜噜久久久久久久久| 沈阳熟女高潮对白视频| 日韩AV电影网站 | 欧洲综合视频| 欧美高清色| 91黑丝露脚| 久久久亚洲精品中文字幕人妻| 熟女人妇一区二区三区| 91无码人妻| 国产亚洲精品美女久久久久久2021| 日夜久久久九九九久| 国产精品嫩草影院午夜两性| av在线人气| 国产精品久久久久无码Av网曝门 | 婷婷av在线中文字幕| 白丝1区2区3区| 国产偷拍网站| 330Dv国产女人终合视频极品人与兽| 天天看夜夜看日日干| 综合色图亚洲欧美| 亚洲一区二区在线观看91| 超碰超碰95| 亚洲视频中文一区| 日韩超碰精品综合| 欧美精品一区二区少妇免费A片| 熟女欧美日韩综合婷婷| 亚洲av综合色区图片亚洲| 老鸭窝黄色视频网站| 黄页网站免费高清在线观看| 亚洲的天堂网| 欧美黄色大香蕉一区二区| 亚洲 欧美 日本 国内 首页| 五月天开心网| 欧美性爱第1 页| 精品十三区| 久久av成人无码免费| 老熟女阿 国产91| 国产欧美伊人| 大香蕉免费3| 免费97视频| 五月丁香激情综合网| 国产精品播放| 亚洲中文电影| 欧美综合区| 啊啊啊好想要| 色哟哟1区2区| 超碰99在线观看| 狠狠操狠狠操操| 欧美在线l亚洲| 亚洲成?V人片在线观看福利| 天天日天天干天天操| 久久色一区二区| 岛园激情| 中文AV制服乱伦| 欧美一品道| 九九热精品在线| 一线黄色免费性爱片| 久久9精品| 色综和网| 67914亚洲精品| 成人性爱av.com| 亚洲激情视频| 中文字幕诱惑制服人妻丝袜美丝袜美| 91超碰人人操| 日韩中文字幕精品一区在线| 青青操日韩| 人妻酒店出差被中出免费在线播放| 在线精品福利免费播放| 91综合色噜噜| 极品一区二区三区免费| 亚洲欧美中日韩| 大香蕉五月天| 国产亚洲日韩在线三区黑人| 亚洲97在线| 蜜桃臀一区二区aV| 伊人久久亚洲中文字幕| 日本三级韩三级99久久| 国产日韩欧美中文在线播放| 中文字幕后石码四区五区| 啊啊啊啊啊啊啊在线| 日韩av三四区| 婷婷六月色| 激情五月天社区| 亚洲国产一区二区日韩专区| 久久黄人人爽视频| 久久久久深夜无码| 国产少妇高潮| 一区麻豆 高清中文字幕| 午夜一区| 免费黄色A片| ..日韩av毛片精品久久久| 天天躁日日躁狠狠躁| 大逼色网站| 9997se| 亚洲精品1区| 精品国产72| 欧美黑人与女人91~| 伊人成人中文字幕久久网| 国产精品自产拍在线观看社区| 先锋激情∨在线视频播放| 尤物视频视频官网| 97色综合中文网| 99热这里都是精品| 另类老少妇| 久久久久人| 长久操视频| 欧美亚洲厕所精品偷拍91| 自拍欧美| 樱花草社区www中国| 色91综合网| 亚洲五区熟女| 大香蕉99热| 久久一二三四五六七八九区区| 中文有码第五页| 日韩AV一区二区三区三州三州| 久久国产精品一级二级三级| 亚洲熟妇极品| 日本免费不卡二区| 国内黄色精品| 求求你操操我| 丰满精品人妻少妇久久字幕| 中 文字幕一区二区三四 五 区日 日 骚 | 亚洲永久永久永久永久一级一级一级精品| 啊啊啊啊视频免费| 97玖玖人妻| 97超碰逼| 玖玖草久草99蜜月一区二区三区| 夜夜夜夜爽| 91高清欧美| 91天天综合日韩欧美| 天天日天天干天天操| 日韩操啪| 日本丝袜人妻内射| 久久一区二区三区入口| 午夜丁香| 蜜桃久久久久久久| 一级黄碟在线观看| 97超碰超欧美。| 亚洲色性| 中日韩免费看男女操逼大全| 亚洲男人久久综合天堂| 国产一区二区a毛片| 爽 好舒服 无码刺激久久| 五月天激情小说| 欧美在线伊人色| 夜夜青青无码影院| 欧美在线啊啊| 第四色奇米影视777| av日韩手机在线影视| 久久久久人妻| 亚洲国成人情色好看电影| 男人的天堂久久狠| 少妇高潮九九九九| 日韩精品国产一区二区| 九九黄色视频在线观看| 青青草原人妻| 免费成人在线熟妇网| 精品国产乱码久久久久久免费| 九九热AV| 欧美一级黄色18片免费看| 欧美日韩国产在线| 99蜜桃臀亚洲成人在线观看| 久久精品噜噜噜成人看免欧美大片| 久久AV无码AV| 五月天黄色激情视频| 中文啪啪视频| 91国产丝袜美女| 亚洲无码视频免费在线观看网址!| 一级特级aaaa毛片免费观看| 精品精品精品| 97免费视频在线观看视频| 国产乱子伦一区二区三区在线观看| 色在线亚洲视频www| 午夜福利在线合集| 七月丁香婷婷| 亚欧国产无码精品在线| 久久大香蕉手机高清视频| 久久久成人免费av电影| 国产91av在线播放| 长长久久曰曰夜夜成人网| 97在线资源| 精品久久久久久AV无码| 1024日韩| 天天操熟妇| 九月丁香婷婷色| 国产视频一区二区在线| 婷婷人妻激情| 日日摸夜夜夜夜爽| 顶级少妇BT天堂| 草草草草视频| 色婷婷视频| 在线电影亚洲色图| 国产精品久久久久无码A√| 啊啊啊啊啊在线观看网址| www.人人摸在线视频| 国产h片在线观看视频| 和协无码影院| 午夜国产成人精品视频| 激情文学网伊人| 超碰超碰超碰超碰的大鸡吧操黑丝袜 | 超碰成人公开| 欧美操逼视频二区| 国产偷人伦激情在线观看| 95人妻爽爽人人做人人澡| 大香蕉性欧美| 国内毛片无码一级毛片| 97视频免费在线| 亚洲第一无码播放立川理惠| 超碰97欧美日韩| 丰满人妻无码一区二区三区| 91天天c| 九九干| 91国精产品| 日本一区二区三区四区免费观看| 伊人久久亚洲中文字幕不卡| 小视频玖玖| 亚洲网污污污污| 黄片aaaaa一区| 日本加勒比无码专区一二三| 久久九九国产精品| 九九超碰综合网| 久久欧美性爱视频| 欧美91网| 人妻天堂综合网| 天天综合97| 欧美性爱一内片一区二区三区| 国产精品精品系列在线观看| 久草色悠悠在线视频| 内射中出日韩在线观看视频| 一块操欧美| AV女资源| 老鸭窝亚洲毛片| 黄片www视频免费| 超碰国产情侣自拍网| 国产欧美在线观看免费观看| 一本大道综合伊人精品热热| 福利操逼| 青青草五月份天| 校园春色 男人天堂 | 日韩一级特黄av毛片| 超碰在线1234区| 亚洲综合五月天| 欧美一区二区男人天堂| 99综合自拍| 色牛牛AV| 久久久久97| jiujiujiujingpin| 99碰碰| 狠狠久久手机视频精品| 校园春色宗合网| 五月婷婷六月丁香| 74成人在线| 97精品一区二区视频在线观看| 亚洲综合春色| 亚洲精美粉嫩嫩泬在线观看 | 91在线页| 18禁美女裸体无遮挡啪啪| 99rre在线精品99re8| 亚洲精品色| 亚洲无码久久久久久久| 91老熟女| 男人天堂无码| 欧洲Au麻豆| 久久久精品国产亚洲AV无码| 啊啊啊在线观看| 亚洲日本大香蕉1| 人妻一区久久二区三区色播| 国产无套粉嫩白浆在| 亚洲精品一二牛牛| 国产嫩草精品A88AV| 啊啊啊啊二区好大| 色综合天天| 日韩不卡在线一区二区| 久久久少妇| 天天综合,91入口| 色91综合网| 久久免费精彩视频| 精品久久久久久中文| 日本久久女同性恋视频| 免费精品AB| 最新av在线| 久久久噜噜噜久久久| 一区二区三区激情在线观看| 操逼无码操逼| 国产综合久久久麻桃个| 99re热| 综合网欧| 久久久久久亚洲精品中文字幕人妻| 免费黄色A片| 97精品熟女少妇一区| 精品无码欧美三级| 水滴偷拍| 91操熟女视频| 伊人久久亚洲色欲综合网站 | 色综合色| 国产做?爰片久久毛片?片美国| 亚洲精品国产专区在线观看| 免费观看日本操逼视频| 99av| 丰满人妻-区二区三区免费看 | 精品午夜福利导航| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 99碰碰| 韩国午夜理伦三级好看| 日韩av免费一级电影| 亚洲欧美色图| 91A欧美电影网站| 欧美热图99| 天天影视综合色| 亚洲精品蜜桃久久久| 99国产精品自在自在| 亚洲黄a三级三级三级看三级| 97久久久精品| 日本欧美色| 美女诱惑在线一区| 欧美天堂超碰97| 后入式在线免费观看60秒| 久久香蕉超碰97国产精品| 少妇三P| 欧美大战久久久伊人| 91精品国久久久久久无码| 1000午夜黄色| 欧美在线 亚洲| 国产成人精品一区| 国内外毛片在线观看| 精品久操| 亚洲熟女人妻中文字幕一区二区| 91狠狠综合久久| 极品肉射| 中国AAAAAA黄色片| 岛国福利在线精品播放| 激情 欧美 亚洲 小说| 中文字幕一区二区在线日韩精品| 成人aⅴ一区二区三区| 久久精品国产亚洲AV嘿嘿| 人人操人人摸人 |