Я разрабатываю приложение для Android на Android Studio с 3 коллегами, и недавно наш проект больше не может быть построен. У всех нас есть разные версии Android Studio (мой 0.2.8), и он не компилируется на всех из них. Мы не можем найти то, что вызывает проблему, потому что это произошло в разные моменты для всех нас (как ни странно, с той же версией проекта, приложение строилось на моей студии Android, а не на одном из моих коллег).Gradle не может разрешать зависимости в Android Studio
Иногда Android Studio может скомпилировать мой проект, когда он его открывает, но затем не удается, когда я пытаюсь запустить приложение. Но большую часть времени Android Studio не удается скомпилировать мой проект, когда он его открывает.
У меня нет ошибок, чтобы помочь мне понять проблему, только заголовок сообщения фоновой задачи может дать мне намек на то, что происходит: Gradle: Resolve dependencies ':_DebugApk'
. Эта фоновая задача никогда не заканчивается, она просто загружается до конца времени.
Я не знаю, связано ли это с файлом build.gradle, но здесь это на случай, если вы можете найти что-то неправильно.
home = System.getenv("ANDROID_HOME")
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
maven {
url "http://maven.hq.couchbase.com/nexus/content/repositories/releases/"
}
maven {
url "http://files.couchbase.com/maven2/"
}
}
dependencies {
compile 'com.android.support:support-v4:18.0.+'
compile 'com.android.support:appcompat-v7:18.0.+'
compile 'com.google.android.gms:play-services:3.1.36'
compile fileTree(dir: 'libs', include: '*.jar')
compile 'com.couchbase.cblite:CBLite:1.0.0-beta'
compile 'com.couchbase.cblite:CBLiteEktorp:1.0.0-beta'
compile 'com.couchbase.cblite:CBLiteJavascript:1.0.0-beta'
instrumentTestCompile 'com.jayway.android.robotium:robotium-solo:4.3'
}
android {
compileSdkVersion 18
buildToolsVersion "18.1"
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot('tests')
// Move the build types to build-types/<type>
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of them default location under src/<type>/... which would
// conflict with src/ being used by the main source set.
// Adding new build types or product flavors should be accompanied
// by a similar customization.
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
}
tasks.withType(Compile) {
options.encoding = 'UTF-8'
}
Что делает Android Studio при разрешении зависимостей? Что может привести к тому, что он будет висеть так?
EDIT:
При выполнении gradle build --info
, он дает мне следующую ошибку:
FAILURE: Строить неудачу с исключением.
- Что пошло не так: выполнение выполнено для задачи ': compileDebug'.
Не удается найти системный компилятор Java. Убедитесь, что вы установили JDK (а не только JRE) и настроили системную переменную JAVA_HOME на , указывая на соответствующий каталог.
EDIT 2:
Android-студия перестала быть в состоянии скомпилировать мой проект снова. Теперь он останавливается на Gradle: Resolve dependencies ':_ReleaseApk'
. И когда я пытаюсь компилировать с Gradle через командную строку, она работает без каких-либо ошибок ...
EDIT 3:
Опять же, Android Студия неудачу при компиляции моего проекта. Теперь он останавливается на Gradle: Resolve dependencies ':_DebugCompile'
. И когда я пытаюсь скомпилировать градир через командную строку, он работает без ошибок ... Бог я ненавижу Грейдл!
Вы можете построить его из командной строки через gradle, я не думаю, что это проблема для Android. Попробуйте запустить gradle build --info – sgarman
Я добавил результат в свой пост –
Испытывая ту же ошибку, что и последняя. Он просто застрял там. Начинаю думать, что Android Studio слишком молода, чтобы стоить усилий ... – Danail