Подтвердить что ты не робот

Не удалось найти метод compile() для аргументов Gradle

Посмотрите на это решение слишком долго, и я не уверен, что я пропустил его или просто что-то не понял, но мой Gradle script не будет компилироваться. Я перехожу к Gradle, и я очень новичок в этом. Я очень привык использовать Maven для управления зависимостями, но Gradle кажется мне лучше всего на данный момент. От запуска этого фрагмента кода:

dependencies {
  compile group: 'org.bukkit', name: 'bukkit', version: '1.7.9-R0.1-SNAPSHOT'
  compile('io.ibj:MattLib:1.1-SNAPSHOT') {
    exclude group: 'de.bananaco'
    exclude 'net.milkbowl:vault:1.2.27'
  }
  compile group: 'net.citizensnpcs', name: 'citizens', version: '2.0.12'
  compile group: 'com.sk89q', name: 'worldedit', version: '5.6.1'
  compile group: 'com.sk89q', name: 'worldguard', version: '5.9'
  compile group: 'net.milkbowl', name: 'vault', version: '1.2.12'
  compile fileTree(dir: 'libs', includes: ['*.jar'])
}

ПРИМЕЧАНИЕ. У меня есть приложения java, maven, nexus, shadow и rebel.

Когда я запускаю свою задачу Gradle, я сталкиваюсь с этой ошибкой:

Could not find method compile() for arguments [[io.ibj:MattLib:1.1-SNAPSHOT], [email protected]] on root project 'project'

Если я удалю зависимость "MattLib" от моего проекта и вставьте его как

compile 'io.ibj:MattLib:1.1-SNAPSHOT'

script завершается, но у меня проблемы с зависимостями. Я прочитал здесь:

dependencies {
  compile("org.gradle.test.excludes:api:1.0") {
    exclude module: 'shared'
  }
}

(Из главы 50 В руководстве Gradle http://www.gradle.org/docs/current/userguide/dependency_management.html)

что я ДОЛЖЕН работать, но я смущен, почему это не так.

gradle - выход преобразования:

Groovy:       1.8.6
Ant:          Apache Ant(TM) version 1.9.3 compiled on December 23 2013
Ivy:          2.2.0
JVM:          1.8.0_05 (Oracle Corporation 25.5-b02)
OS:           Windows 7 6.1 amd64

Любые мысли?

4b9b3361

Ответ 2

Убедитесь, что вы редактируете правильный файл build.gradle. Я получил эту ошибку при редактировании android/build.gradle, а не android/app/build.gradle.

Ответ 3

compile - это configuration, который обычно вводится плагином (скорее всего, это java-плагин). Подробнее об конфигурациях смотрите в gradle userguide. Теперь добавление java-плагина поверх вашей сборки script должно сделать трюк:

apply plugin:'java'

Ответ 4

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

Ответ 5

Надежда Ниже шаги помогут

Добавьте зависимость от уровня проекта build.gradle:

classpath 'com.google.gms:google-services:3.0.0'

Добавьте плагин на уровень приложения build.gradle:

apply plugin: 'com.google.gms.google-services'

уровень приложения build.gradle:

dependencies {
        compile 'com.google.android.gms:play-services-auth:9.8.0'
}

Ответ 6

Неправильный файл Gradle. Правильный - build.gradle в папке "app".

Ответ 7

В моем случае мне пришлось удалить некоторые файлы, которые были созданы gradle в какой-то момент в моем исследовании, чтобы все заработало. Итак, уборка после того, как все испортилось, а потом все прошло нормально...

Если вы столкнулись с этой проблемой в git-проекте, выполните команду git status и удалите ненужные файлы. (По мне, у elasticsearch была проблема с plugins/analysis-icu).