Gradle构buildAndroid项目“无法解决所有依赖项”错误

我试图用Gradle构build我的第一个项目,我认为我的gradle文件和设置是正确的。

我只使用一个模块和支持V4 + AppCompatBar库。

项目 – build.gradle

allprojects { repositories { mavenCentral() } } 

项目 – settings.gradle

 include ':AssignmentTempos21' 

主要模块 – build.gradle

 buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.5.+' } } apply plugin: 'android' repositories { mavenCentral() } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 8 targetSdkVersion 17 } } dependencies { compile "com.android.support:support-v4:18.0.+" compile "com.android.support:appcompat-v7:18.0.+" } 

用-i标志输出控制台:

 MacBook-Air-de-Cesar-2:AssignmentTempos21 menor$ ./gradlew -i clean assemble Starting Build Settings evaluated using settings file '/Users/menor/workspace_android/AssignmentTempos21/settings.gradle'. Projects loaded. Root project using build file '/Users/menor/workspace_android/AssignmentTempos21/build.gradle'. Included projects: [root project 'AssignmentTempos21', project ':AssignmentTempos21'] Evaluating root project 'AssignmentTempos21' using build file '/Users/menor/workspace_android/AssignmentTempos21/build.gradle'. Compiling build file '/Users/menor/workspace_android/AssignmentTempos21/build.gradle' using BuildScriptClasspathScriptTransformer. Compiling build file '/Users/menor/workspace_android/AssignmentTempos21/build.gradle' using BuildScriptTransformer. Evaluating project ':AssignmentTempos21' using build file '/Users/menor/workspace_android/AssignmentTempos21/AssignmentTempos21/build.gradle'. Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/maven-metadata.xml] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/maven-metadata.xml] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/maven-metadata.xml] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/maven-metadata.xml] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/maven-metadata.xml] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/maven-metadata.xml] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/maven-metadata.xml] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/maven-metadata.xml] Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/] FAILURE: Build failed with an exception. * What went wrong: A problem occurred configuring project ':AssignmentTempos21'. > Failed to notify project evaluation listener. > Could not resolve all dependencies for configuration ':AssignmentTempos21:_DebugCompile'. > Could not find any version that matches com.android.support:support-v4:18.0.+. Required by: AssignmentTempos21:AssignmentTempos21:unspecified > Could not find any version that matches com.android.support:appcompat-v7:18.0.+. Required by: AssignmentTempos21:AssignmentTempos21:unspecified * Try: Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output. BUILD FAILED Total time: 40.787 secs 

先谢谢你!!

正如彼得所说,他们不会在马文中心

从Android SDK Manager下载“Android Support Repository”,支持库的Maven repo将下载到您的Android SDK目录(请参阅“extras”文件夹)

将库部署到您的本地.m2存储库,您可以使用maven-android-sdk-deployer

2017编辑:

您现在可以参考Google在线M2回购

 repositories { google() jcenter() } 

转到你安装Android Studio的地方(对于我来说,它位于C:\Users\username\AppData\Local\Android\android-studio\ )并打开sdk\tools ,然后运行android.bat 。 从这里,更新和下载任何缺less的构build工具,并确保在更新下更新Android支持信息库和Android支持库。 SDK Manager完成后重新启动Android Studio。

看来,Android Studio完全忽略了任何已安装的Android SDK文件,并保留自己的副本。 运行更新后,使用编译com.android.support:appcompat-v7:18.0.+

如果您正在无头CI上运行,并且正在通过命令行安装Android SDK,请确保将m2repository软件包包含在--filter参数中:

 android update sdk --no-ui --filter platform-tools,build-tools-19.0.1,android-19,extra-android-support,extra-android-m2repository,extra-google-m2repository 

更新

从Android SDK经理修改。 22.6.4这不起作用了。 试试这个:

 android list sdk --all 

您将获得所有可用SDK包的列表。 从上面的第一个命令(“Google Repository”和其他你可能会丢失的)查找组件的数值。

使用它们的数值来安装软件包:

 android update sdk --no-ui --all --filter <num> 

更新#2(2017年9月)

有了今年早些时候发布的“新”Android SDK工具, android命令现在已经被弃用了,类似的function已经被转移到了一个叫sdkmanager的新工具:

列出安装的组件:

 sdkmanager --list 

更新安装的组件:

 sdkmanager --update 

安装一个新的组件(例如构build工具版本26.0.0 ):

 sdkmanager 'build-tools;26.0.0' 

这些依赖关系在Maven Central中不存在( 请参阅此 )。

 compileSdkVersion 17 targetSdkVersion 17 

将编译版本从18更改为17

 compile "com.android.support:support-v4:17.0.+" compile "com.android.support:appcompat-v7:17.0.+" 

除了卡西姆的回答:

正如彼得所说,他们不会在马文中心

使用maven-android-sdk-deployer将库部署到本地存储库

或者从Android SDK Manager下载Android Support Repository(在Extras中),支持库的M2 repo将被下载到您的Android SDK目录

我还必须在Android SDK Manager中更新“本地Maven仓库支持库”。

要回显@friederbluemle,如果您安装了Android SDK工具,也可以从命令行启动SDKpipe理器:

$ android

然后在popup的UI中,select需要安装的工具/存储库 – 在你的情况下,支持库回购

在应用程序的build.gradle文件中写下面的语句。

com.android.support:appcompat-v7:18.0.+

而已

尝试closures您的防火墙it works for me 。 看来,android工作室想下载一些依赖关系,我们的防火墙阻止它下载, just be aware that turning your firewall off may lower the security of your computer 。 如果你有更多的时间,你可以手动让你的android工作室绕过你的防火墙,这样你就可以打开你的防火墙,同时允许android工作室下载任何它想要的。

我在Gradle Build选项卡中的Android Studio 2.1.1中有这个消息。 我从SDKpipe理器中安装了很多文件,但没有帮助。

我需要点击下一个标签“Gradle Sync”。 有一个链接“Install Repository and sync project”安装了“Android Support Repository”。

  1. 安装android sdkpipe理器
  2. 检查是否安装了build筑工具。 安装api 23。
  3. 从Android SDK Manager下载“Android Support Repository”
  4. 删除cordova-plugin-android-support-v4
  5. build立