[英]Gradle build error: Could not resolve all dependencies for configuration ':classpath'
[英]Gradle Build Android Project “Could not resolve all dependencies” error
我正在嘗試使用 Gradle 構建我的第一個項目,我認為我的 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
正如彼得所說,他們不會在 Maven 中心
從 Android SDK Manager 下載“Android Support Repository”,支持庫的 Maven 存儲庫將下載到您的 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
。 從這里,更新和下載任何缺少的構建工具,並確保更新了 Extras 下的 Android Support Repository 和 Android Support Library。 SDK 管理器完成后重新啟動 Android Studio。
Android Studio 似乎完全忽略了任何已安裝的 Android SDK 文件並保留了自己的副本。 運行更新后,使用 compile com.android.support:appcompat-v7:18.0.+
為我成功編譯了所有內容
如果您在無頭 CI 上運行並通過命令行安裝 Android SDK,請確保在--filter
參數中包含 m2repository 包:
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 Manager 版本開始。 22.6.4 這不再起作用了。 試試這個:
android list sdk --all
您將獲得所有可用 SDK 包的列表。 從上面的第一個命令(“Google Repository”和您可能遺漏的其他命令)中查找組件的數值。
使用它們的數值安裝軟件包:
android update sdk --no-ui --all --filter <num>
更新 #2(2017 年 9 月)
隨着今年早些時候發布的“新”Android SDK 工具, android
命令現已棄用,類似的功能已移至名為sdkmanager
的新工具:
列出已安裝的組件:
sdkmanager --list
更新已安裝的組件:
sdkmanager --update
安裝新組件(例如構建工具版本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 中心
使用maven-android-sdk-deployer將庫部署到本地存儲庫
或者從 Android SDK Manager 下載 Android Support Repository(在 Extras 中),支持庫的 M2 repo 將下載到您的 Android SDK 目錄
我還必須在 Android SDK 管理器中更新“支持庫的本地 Maven 存儲庫”。
回應@friederbluemle,如果您安裝了Android SDK工具,您也可以從命令行啟動SDK管理器:
$ android
然后在彈出的 UI 中,選擇需要安裝的工具/存儲庫 - 在您的情況下是支持庫存儲庫
在您的應用程序的 build.gradle 文件中寫入以下語句。
com.android.support:appcompat-v7:18.0.+
而已
嘗試關閉您的防火牆, it works for me
。 看起來 android studio 想要下載一些依賴項,而我們的防火牆阻止它下載它,請just be aware that turning your firewall off may lower the security of your computer
。 如果您有更多時間,您可以手動允許您的 android studio 繞過防火牆,這樣您就可以打開防火牆,同時允許 android studio 下載它想要的任何內容。
我在 Android Studio 2.1.1 的 Gradle Build 選項卡中收到了這條消息。 我從 SDK Manager 安裝了很多文件,但沒有幫助。
我需要單擊下一個選項卡“Gradle Sync”。 有一個鏈接“安裝存儲庫和同步項目”安裝了“Android 支持存儲庫”。
將此添加到您的 gradle 中:
allprojects {
buildscript {
repositories {
maven {
url "https://dl.bintray.com/android/android-tools"
}
}
}
...
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.