gradle下载更新依赖库失败的解决办法|gradle下载更新依赖库失败的解决办法 - 依赖库下载加速1000%
现在使用gradle来构建项目的越来越多,通过gradle能更轻松完成项目的依赖以及编译等工作。特别是Google的Android Studio这个富二代,开发的Android项目默认支持gradle,搞得gradle从一个默默无闻的小妹子直接晋升为新一代的国民女神!
跟gradle互动的确能带来很多快感,不过这个妹子远在异国他乡,国内又没有适合它的(网络)环境,没有一个很好的房子给她住(镜像库渠道来存储依赖包),所以很多人还是通过越洋电话来跟她沟通(国外的库来获取依赖),这样一来,如果那天聊的非常嗨,需要很长时间(依赖库太大),中途出现断线(下载失败、超时)的问题,就会很郁闷了,于是你重新联系,又是刚嗨起来,结果又断线了... ...你的一口老血就喷出来了!
不要笑,我就吐过几次,要不怎么会写这篇文章提醒你呢!别想了,说的就是你,要不你没事来找gradle下载更新依赖库失败的文章为毛啊!
【gradle下载更新依赖库失败的解决办法|gradle下载更新依赖库失败的解决办法 - 依赖库下载加速1000%】行了,不扯了,前面说那么多,就是要把具体问题讲清楚,下面来说说问题的解决办法。
首先,gradle一般会出现让咱们吐血的问题有两种情况:
- 第一种情况是Android Studio的开发环境下,第一次安装gradle包或者自动安装gradle包的时候,gradle会自动将gradle-2.x-all.zip包进行安装或者更新
- 第二种情况是使用gradle构建的项目在使用【./gradlew build】的时候,gradle自动下载更新项目依赖库
Android Studio下安装更新gradle加速 使用Android Studio编译项目的时候,当你在Terminal窗口敲出【gradle assemblerelease】时,如果gradle需要安装gradle包或者自动安装gradle包的时候,gradle会自动将gradle-2.x-all.zip下载到【Users\user\.gradle\wrapper\dists\gradle-*-all】一个UUID命名的目录下,如果你是2.8,就会下载到【Users\user\.gradle\wrapper\dists\gradle-2.8-all\ah86jmo43de9lfa8xg9ux3c4h】
但是下载... 太难了!
动不动就没连接了,一言不合就报错,还能不能愉快的开发了?
好吧,我来讲讲怎么用黑科技搞定这个问题:
下载前应该有这样的内容:
[plain]view plain copy print ?
- Download http://services.gradle.org/distributions/gradle-2.8-all.zip
- > 正在用吃奶的劲下载gradle ... > 66.4 MB/2.50 MB downloaded
打开迅雷:添加【http://services.gradle.org/distributions/gradle-2.8-all.zip】到下载任务,然后看着几百kb甚至几m的下载速度,是不是这种感觉:
好了,你可以合上嘴了,免得哈喇子流出来影响女神对你的印象,然后把刚刚下好的包(为什么这么快?因为叫闪电啊!),拷贝到【Users\user\.gradle\wrapper\dists\gradle-xxx-all\ah86jmo43de9lfa8xg9ux3c4h】目录下,重新执行【gradle assemblerelease】,OK!
不用看新闻联播,这个世界又美好了!
gradle构建的项目编译项目【./gradlew build】加速 前两年还在努力追(学习)maven这个妹子,好不容易到手,熟悉了,了解了,虽然中间出现一些不愉快(构建异常),但是总体来说,相处还不错,结果最近做项目用到SpringSecurity安全框架,发现这个作者居然用gradle来构建项目,了解了一下gradle,说是更极品女神[人美声甜腰细奶大发长活好不粘人](想想还是有点小激动),突然有种初恋的感觉(又要重新了解一个新的构建工具了),这不是让我犯错误吗(刚了解,肯定一堆错误)?我是那种喜新厌旧的人吗?(干这行的都知道是)好吧,我承认!
还等什么,那就上呗!
在github上clone一下SpringSecurity,clone完成,进入spring-security目录,直接【./gradlew install】搞起,没什么问题,然后【./gradlew build】,看到屏幕上夸夸夸一堆代码闪过,心里美滋滋的,想想,这么快就搞定了,不自己都不能相信了,突然一副画面出现在我眼前:
可是... ... 三个小时过去了,看到这个画面:
[plain]view plain copy print ?
- Download https://repo1.maven.org/maven2/com/google/appengine/appengine-java-sdk/1.9.23/appengine-java-sdk-1.9.23.pom
- Download https://repo1.maven.org/maven2/com/google/appengine/appengine-java-sdk/1.9.23/appengine-java-sdk-1.9.23.zip
- > Configuring > 54/54 projects > 129.33 MB/159.69 MB downloaded
[plain]view plain copy print ?
- Download https://repo1.maven.org/maven2/com/google/appengine/appengine-java-sdk/1.9.23/appengine-java-sdk-1.9.23.pom
- Download https://repo1.maven.org/maven2/com/google/appengine/appengine-java-sdk/1.9.23/appengine-java-sdk-1.9.23.zip
- > Configuring > 54/54 projects > 129.33 MB/159.69 MB downloaded
不要问我为什么按下Control + C,不要问我心里的感受,因为:
你想安慰我:在国内开发去下国外的资源,很多情况都是这样,你又能怎么办?
但是,谁说没有办法,又要拿出我的黑科技了!
将刚才链接中的
【https://repo1.maven.org/maven2/com/google/appengine/appengine-Java-sdk/1.9.23/appengine-java-sdk-1.9.23.zip】
放到迅雷,呵呵!
文章图片
天空飘来五个字:那都不是事!
然后找到gradle存放依赖包的目录,将这个包放进去:
gradle默认的依赖存放地址是:
Windows系统默认下载到:C:\Users\(用户名)\.gradle\caches\modules-2\files-2.1
Mac系统默认下载到:/Users/(用户名)/.gradle/caches/modules-2/files-2.1
另外,在这个目录下,需要将依赖库对应上,比如上面的
【https://repo1.maven.org/maven2/com/google/appengine/appengine-java-sdk/1.9.23/appengine-java-sdk-1.9.23.zip】
你可以在gradle的files-2.1目录找到这个目录:
【com.google.appengine/appengine-java-sdk/1.9.23/c05c8fd5da7fa56eefa3d64f548dd0329e4126de/】
然后拷贝进去:
【com.google.appengine/appengine-java-sdk/1.9.23/c05c8fd5da7fa56eefa3d64f548dd0329e4126de/appengine-java-sdk-1.9.23.zip】
然后重新运行【./gradlew build】
[plain]view plain copy print ?
- MacBook-Pro:spring-security user$ ./gradlew build
- FAILURE: Build failed with an exception.
- * What went wrong:
- Could not resolve all dependencies for configuration ':runtime'.
- > Timeout waiting to lock artifact cache (/Users/user/.gradle/caches/modules-2). It is currently in use by another Gradle instance.
- Owner PID: 4844
- Our PID: 4932
- Owner Operation: resolve configuration ':classpath'
- Our operation: resolve configuration ':runtime'
- Lock file: /Users/user/.gradle/caches/modules-2/modules-2.lock
- * Try:
- Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
- BUILD FAILED
- Total time: 1 mins 2.695 secs
我去,这是什么情况? 不是写的很清楚吗?文件被锁了!怎么办?删除这个文件不就行了嘛!
[plain]view plain copy print ?
- Lock file: /Users/user/.gradle/caches/modules-2/modules-2.lock
再运行【./gradlew build】,又是什么情况?已经说过了,文件被锁了?删除!不过记住,上次删除过的文件要重新删除一下!
[plain]view plain copy print ?
- :itest-context:generatePom
- FAILURE: Build failed with an exception.
- * What went wrong:
- Timeout waiting to lock task history cache (/Users/user/Projects/spring-security/.gradle/2.14/taskArtifacts). It is currently in use by another Gradle instance.
- Owner PID: 5011
- Our PID: 5086
- Owner Operation: Load task history
- Our operation: Load task history
- Lock file: /Users/user/Projects/spring-security/.gradle/2.14/taskArtifacts/cache.properties.lock
- * Try:
- Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
- BUILD FAILED
- Total time: 1 mins 19.312 secs
- MacBook-Pro:spring-security user$ rm -rf /Users/user/Projects/spring-security/.gradle/2.14/taskArtifacts/cache.properties.lock
- MacBook-Pro:spring-security user$ rm -rf /Users/user/.gradle/caches/modules-2/modules-2.lock
- MacBook-Pro:spring-security user$ rm -rf /Users/user/.gradle/caches/2.14/plugin-resolution/cache.properties.lock
- MacBook-Pro:spring-security user$ rm -rf /Users/user/.gradle/caches/2.14/plugin-resolution/cache.properties.lock
- MacBook-Pro:spring-security user$ ./gradlew build
啊,世界终于美好了!可是,我又遇到了一个21M的jar包,怎么办?
如果下载速度能到100多k,就等一会呗!
如果几十kb甚至十几kb,老办法啊!
[plain]view plain copy print ?
- Download https://repo1.maven.org/maven2/org/jruby/jruby-complete/1.7.16.1/jruby-complete-1.7.16.1.jar
- > Building 11% > :docs:manual:asciidoctor > 3.06 MB/21.10 MB downloaded
终于,在历经千辛万苦之后,看到了下面的内容:
[plain]view plain copy print ?
- :docs:guides:check UP-TO-DATE
- :docs:guides:build UP-TO-DATE
- :docs:manual:assemble UP-TO-DATE
- :docs:manual:check UP-TO-DATE
- :docs:manual:build UP-TO-DATE
- BUILD SUCCESSFUL
- Total time: 1 hrs 30 mins 47.848 secs
- This build could be faster, please consider using the Gradle Daemon: https://docs.gradle.org/2.14/userguide/gradle_daemon.html
- 2016-08-20 18:32:58.964:INFO::Shutdown hook executing
- 2016-08-20 18:32:58.965:INFO::Stopped SslSocketConnector@0.0.0.0:60158
- 2016-08-20 18:32:59.473:INFO:/cas:Closing Spring root WebApplicationContext
- 2016-08-20 18:32:59.589:INFO::Shutdown hook complete
- 2016-08-20 18:33:00.593:INFO::Stopped SslSocketConnector@0.0.0.0:60157
- 2016-08-20 18:33:00.593:INFO::Stopped SelectChannelConnector@0.0.0.0:60156
- 2016-08-20 18:33:01.101:INFO:/cas-sample:Closing Spring root WebApplicationContext
- 2016-08-20 18:33:01.113:INFO::Shutdown hook complete
恭喜你,大功告成!
感觉自己又相信爱情了!
推荐阅读
- 六月更新的......
- 《机器学习实战》高清中文版PDF英文版PDF+源代码下载
- 百度云极速下载,来体验飞的感觉,还可以看最新动漫的百度云视频哦
- 狗狗定点大小便视频教程下载地址
- Spring|Spring Cloud Feign实现文件上传下载的示例代码
- MagicaVoxel-0.99.6-macos-10.7|MagicaVoxel-0.99.6-macos-10.7 网盘下载
- K8S|K8S 生态周报| Istio 即将发布重大安全更新,多个版本受影响
- 意想不到,《逆天邪神》断更半个月更新之后,又断更了
- 小姐姐教你用python把全网小说一键下载
- 技术|为参加2021年蓝桥杯Java软件开发大学B组细心整理常见基础知识、搜索和常用算法解析例题(持续更新...)