Android Studio不能获取远程依赖包的解决方法
2016-03-27 18:35
543 查看
最近被一个AS的sync问题困扰,在引入远程依赖包的时候,会出现一个sync错误,提示找不到这个类库。然而,并不是所有的工程都会出现这个问题,有的工程引入同样的类库却没有问题。
Error:(25, 13) Failed to resolve: com.jakewharton:butterknife:5.1.1
网上查了下(http://stackoverflow.com/questions/20746071/failed-to-build-android-hello-world-application-in-offline-mode),说是设置了offline work,需要将gradle设置里的offline work去掉,然而我的AS中并没有勾选这个选项。
试一下把这个选项打开是什么效果,打开后重新sync出现下面的错误,和之前的错误有点差别,多了错误提示“Disable offline mode and Sync”。也就是说,出现了如下这个问题的时候,可以通过关闭“offline work”选项来解决。
还是没有找到我们问题的真正原因,只能继续排查。偶然间发现另外一个工程中的build.gradle文件中配置有些不同的地方,比出错工程的build.gradle文件多了一段。
出错工程的build.gradle文件配置:
正确工程的build.gradle文件配置:
试着给正确工程的build.gradle添加上这一段配置,重新sync,竟然通过了。。。
前面已经配置了远程仓库,怎么还需要再配置一份呢?还是需要查下build.gradle中的buildscript和allprojects两个配置项有什么差别。
原来buildscript中的声明是gradle脚本自身需要使用的资源。可以声明的资源包括依赖项、第三方插件、maven仓库地址等。而在build.gradle文件中直接声明的依赖项、仓库地址等信息是项目自身需要的资源。
“allprojects”这个配置项在Android Studio默认生成的工程中的build.gradle文件中是存在的,我这个工程之所以没有,是由于我的工程是从Eclipse工程转换来的。
希望上面的内容可以帮到有需要的同学。
Error:(25, 13) Failed to resolve: com.jakewharton:butterknife:5.1.1
网上查了下(http://stackoverflow.com/questions/20746071/failed-to-build-android-hello-world-application-in-offline-mode),说是设置了offline work,需要将gradle设置里的offline work去掉,然而我的AS中并没有勾选这个选项。
试一下把这个选项打开是什么效果,打开后重新sync出现下面的错误,和之前的错误有点差别,多了错误提示“Disable offline mode and Sync”。也就是说,出现了如下这个问题的时候,可以通过关闭“offline work”选项来解决。
还是没有找到我们问题的真正原因,只能继续排查。偶然间发现另外一个工程中的build.gradle文件中配置有些不同的地方,比出错工程的build.gradle文件多了一段。
出错工程的build.gradle文件配置:
apply plugin: 'android' buildscript { repositories { jcenter { url "http://jcenter.bintray.com/" } } dependencies { classpath 'com.android.tools.build:gradle:1.3.0' } }
正确工程的build.gradle文件配置:
apply plugin: 'android' buildscript { repositories { jcenter { url "http://jcenter.bintray.com/" } } dependencies { classpath 'com.android.tools.build:gradle:1.3.0' } }
allprojects {
repositories {
jcenter()
}
}
试着给正确工程的build.gradle添加上这一段配置,重新sync,竟然通过了。。。
前面已经配置了远程仓库,怎么还需要再配置一份呢?还是需要查下build.gradle中的buildscript和allprojects两个配置项有什么差别。
原来buildscript中的声明是gradle脚本自身需要使用的资源。可以声明的资源包括依赖项、第三方插件、maven仓库地址等。而在build.gradle文件中直接声明的依赖项、仓库地址等信息是项目自身需要的资源。
“allprojects”这个配置项在Android Studio默认生成的工程中的build.gradle文件中是存在的,我这个工程之所以没有,是由于我的工程是从Eclipse工程转换来的。
希望上面的内容可以帮到有需要的同学。
相关文章推荐
- Android Scroll详解(一):基础知识
- GCM(谷歌云推送)客户端服务器端开发全指南(客户端)
- com/android/dx/command/dexer/Main : Unsupported major.minor version 52.0
- Android5.0 之 SnackBar
- Android真机调试时,Device的连接容易断开
- #Android学习#Animation之布局动画
- android自定义View(一):扩展方式(继承)带有预置数据 和 删除键的自定义EditText
- android动画详解五 layout,插值与评估器
- Android ProgressBar 样式大全
- android studio 2.1 preview4 之 gradle插件问题
- 内部Handler类引起内存泄露
- AndroidStudio中代码混淆以及打包操作
- Android ORM应用开发框架KJFrameForAndroid使用详解
- Android初试--Android中的ContentProvider(3)
- 给TextView加背景
- Android M上VideoCall中Audio的管理(2016.05.27 新增CallsManager部分)
- android 获得当前进程的名字
- Android.Camera2相机超详细讲解
- mac下安装genymotion android模拟器
- Android_PopupWindow提示框