Ошибка сборки 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 57

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 будет синхронизирован, но этот тип синхронизации, если блок зависимостей имеет что-то вроде:

этот блок останется таким после синхронизации:

один из способов решить проблему-вставить разрыв строки в оставайтесь как было до синхронизации или поставьте точку с запятой между двумя операторами.

Я надеюсь, что это помогает.

просто добавьте оператор foolwoing в свои зависимости

применить плагин: 'jetty'

Привет всем для меня это была "пара дней отнимает работу", чтобы сделать мое приложение работает в Android Studio (Я мигрировал из Eclipse и тоже имел эту проблему). Наконец я нашел этот очень простой способ .

  1. создать папку libs под src / main/ java/это приложение/java / libs в левой панели .
  2. скопируйте и вставьте все ваши внешние JAR-файлы здесь.
  3. перейти на левой панели и щелкните правой кнопкой мыши на вашем приложении, а затем нажмите кнопку Открыть модуль Настройки
  4. затем появится окно структура проекта .
  5. затем перейдите на вкладку зависимости . Заключительный шаг: Добавьте все ваши банки, расположенные в App / java/libs (вы найдете их в src/main/java / libs) один за другим .

вот и все наслаждайтесь.

объявить зависимости в модуле построить.gradle, а не в AlexTest это построить.gradle file

enter image description here