Ошибка сборки Android gradle: (9, 0) метод Gradle DSL не найден: 'compile ()'.
Я получаю следующую ошибку сборки, когда я пытаюсь синхронизировать свой проект:
Error:(9, 0) Gradle DSL method not found: 'compile()'
Possible causes:The project 'AlexTest' may be using a version of Gradle that does not contain the method.
The build file may be missing a Gradle plugin.
link: Apply Gradle plugin
Я попытался применить каждый плагин gradle, с которым они связывают меня в этой ссылке внизу, но та же проблема, поэтому я заключаю, что первая ошибка является причиной.
вот сборка.файл gradle для AlexTest (каталог проекта):
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.13.2'
compile 'com.google.android.gms:play-services:6.1.11'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
Я думаю, что это был файл gradle, с которым у него были проблемы. Но я не уверен, о каком методе идет речь.
также здесь gradle-обертка.свойства, на которые он также ссылался:
#Mon Nov 10 01:06:12 PST 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https://services.gradle.org/distributions/gradle-2.1-all.zip
возможно, версия gradle в distributionUrl должна соответствовать той, что находится в зависимости?
у меня тоже есть сборки.файл gradle в самом каталоге приложений-на 1 уровень ниже, хотя я не думаю, что это то, что он имел в виду, но вот он:
apply plugin: 'com.android.application'
android {
compileSdkVersion 20
buildToolsVersion "21.1.1"
defaultConfig {
applicationId "com.snappiesticker.alextest"
minSdkVersion 16
targetSdkVersion 20
versionCode 1
versionName "1.0"
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.android.gms:play-services:6.1.+'
}
5 ответов:
Я попытался применить каждый плагин gradle, с которым они связывают меня в этой ссылке внизу, но та же проблема, поэтому я заключаю, что первая ошибка является причиной.
правильно.
вот сборка.файл gradle для AlexTest (каталог проекта):
Вы заметите, что этот файл содержит комментарий код:
// NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files
удалить
compile 'com.google.android.gms:play-services:6.1.11'
строка из этого файла. Оставьcompile 'com.google.android.gms:play-services:6.1.+'
что вы есть в другом .The
dependencies
закрытиеbuildscript
только для плагинов Gradle. На высшем уровнеdependencies
закрытие, найденное в модулеbuild.gradle
файл, предназначен для зависимостей приложений.
увидел сообщения о том, что проблема возникла по другим причинам, но это решаемо для меня.
Если вы выполняете какие-либо изменения в структуре проекта (Android Studio) и нажимаете OK, Gradle будет синхронизирован, но этот тип синхронизации, если блок зависимостей имеет что-то вроде:
этот блок останется таким после синхронизации:
один из способов решить проблему-вставить разрыв строки в оставайтесь как было до синхронизации или поставьте точку с запятой между двумя операторами.
Я надеюсь, что это помогает.
Привет всем для меня это была "пара дней отнимает работу", чтобы сделать мое приложение работает в Android Studio (Я мигрировал из Eclipse и тоже имел эту проблему). Наконец я нашел этот очень простой способ .
- создать папку libs под src / main/ java/это приложение/java / libs в левой панели .
- скопируйте и вставьте все ваши внешние JAR-файлы здесь.
- перейти на левой панели и щелкните правой кнопкой мыши на вашем приложении, а затем нажмите кнопку Открыть модуль Настройки
- затем появится окно структура проекта .
- затем перейдите на вкладку зависимости . Заключительный шаг: Добавьте все ваши банки, расположенные в App / java/libs (вы найдете их в src/main/java / libs) один за другим .
вот и все наслаждайтесь.