Не удалось найти метод android() для аргументов
Я пытаюсь импортировать проект в Android Studio, и вот где я застрял, есть аналогичный вопрос в Stack Overflow, но он не предоставил решение моей конкретной ошибки.
Это мой журнал ошибок:
C:\<some location>\build.gradle
Error:(24, 1) A problem occurred evaluating root project '<project name>'.
> Could not find method android() for arguments [[email protected]] on root project '<project name>'.
Information:BUILD FAILED
Синхронизирующие сообщения Gradle:
Ошибка: (24, 0) Gradle Метод DSL не найден: 'android()' Возможно причины:
В проекте "PoojaPeople" может использоваться версия Gradle, который не содержит метода. Gradle Настройки Файл сборки может отсутствовать плагин Gradle. Подать выражение Gradle плагин
Я не уверен, где именно находится этот метод android()
. Если он находится в файле Application build.gradle
, я до сих пор точно не знаю, куда идти отсюда. Любая помощь приветствуется.
Мой build.gradle
-
buildscript {
repositories {
maven { url "http://dl.bintray.com/populov/maven" }
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
maven { url "http://dl.bintray.com/populov/maven" }
mavenCentral()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
android {
compileSdkVersion 17
buildToolsVersion '23.0.0'
}
dependencies {
compile files('app/libs/junit-4.12-JavaDoc.jar')
}
apply plugin: 'maven'
Ответы
Ответ 1
Вы используете неправильный build.gradle
файл.
В вашем файле верхнего уровня вы не можете определить блок android
.
Просто переместите эту часть внутри файла module/build.gradle
.
android {
compileSdkVersion 17
buildToolsVersion '23.0.0'
}
dependencies {
compile files('app/libs/junit-4.12-JavaDoc.jar')
}
apply plugin: 'maven'
Ответ 2
ребята. Раньше у меня была такая же проблема, когда я пытаюсь импортировать пакет .aar в мой проект, и, к сожалению, прежде чем сделать пакет .aar модульной зависимостью моего проекта, у меня было два модуля (один о ROS-ANDROID-CV-BRIDGE, еще один OPENCV-FOR-ANDROID). Итак, я получил эту ошибку, когда вы встречаетесь:
Error:Could not find method android() for arguments [o[email protected]7e550e0e] on project ‘:xxx’ of type org.gradle.api.Project.
Итак, это болезненная gradle -структура вызвала эту проблему, когда у вас несколько модулей в вашем проекте, и, что еще хуже, они импортируются по-разному или имеют разные типы (пакеты .jar/.aar или просто проект библиотеки Java). И на самом деле проблема с головной болью заключается в том, чтобы сделать такую конфигурацию, как компиляция, зависимости библиотек и т.д. В каждом подпроекте, совместимом с основным проектом.
Я решил свою проблему, просто выполните следующие действия:
① Скопируйте пакет .aar в приложение /libs.
② Добавьте это в файл app/build.gradle:
repositories {
flatDir {
dirs 'libs' //this way we can find the .aar file in libs folder
}
}
③ Добавьте это в свой файл add build.gradle модуля, который вы хотите применить зависимость .aar(в моей ситуации просто добавьте это в файл app/build.gradle):
dependencies {
compile(name:'package_name', ext:'aar')
}
Итак, если это возможно, просто попробуйте экспортировать зависимость вашего модуля как пакет .aar, а затем следуйте этому примеру, импортируйте его в свой основной проект. Во всяком случае, я надеюсь, что это может быть хорошим предложением и решит вашу проблему, если у вас будет такая же ситуация со мной.