it-swarm.com.ru

Сборка Android Studio завершается с ошибкой: "Задача" не найдена в корневом проекте "MyProject".

Я получаю эту ошибку при попытке построить свой проект после смены ноутбука и обновления до Android Studio версии 0.8.2.

FAILURE: сборка не удалась, исключение.

  • Что пошло не так: Задача '' не найдена в корневом проекте 'MyProject'.

  • Пытаться: Запустите задачи gradle, чтобы получить список доступных задач. Запустите с параметром --stacktrace, чтобы получить трассировку стека. Запустите с параметром --info или --debug, чтобы получить больше вывода журнала.

СТРОИТЬ НЕУДАЧИ

Вот мои файлы Gradle:

Настройки верхнего уровня

include ':MyProject'

build.gradle в MyProject:

apply plugin: 'com.Android.application'

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath "com.Android.tools.build:gradle:0.12.+"
    }
}
repositories {
    mavenCentral()
}

Android {
    compileSdkVersion 20
    buildToolsVersion "20"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 20
    }
}

dependencies {
    compile 'de.timroes.Android:EnhancedListView:[email protected]'
    compile 'com.nineoldandroids:library:2.4.0'
}

Верхний уровень build.gradle пуст

81
TomRichardson

Хотя и с опозданием ответить, это трудный вопрос для Google (одинарные кавычки), и неясно, что происходит. У меня пока нет репутации, чтобы комментировать или спрашивать о сфере действия (или публиковать 3 ссылки), поэтому этот ответ может быть немного утомительным. 

Чтобы быстро ответить, в вашем проекте может быть несколько плагинов Gradle.

Синхронизировать Gradle Wrapper и плагины

Кажется, моя проблема началась с поврежденного файла IML. Android Studio (между закрытием и повторным открытием проекта) начала жаловаться, что IML пропал (его не было) и необходимо удалить модуль, но я отказался. Он сохранился, я обновился до AS 0.8.7 (канарский канал) и застрял в проблеме с OP (задача не найдена в корневом проекте). Это полностью заблокированные сборки, поэтому мне пришлось копаться в Gradle.

Мои шаги по восстановлению OSX (пожалуйста, настройте для Windows):

  1. Обновите Android Studio до версии 0.8.7
    • Предпочтения | Обновления | Переключите «Бета-канал» на «Канарский канал», затем выполните проверку сейчас.
    • Вы можете пропустить это.
  2. Проверен упаковщик Gradle (в настоящее время 1.12.2; в настоящее время не пытайтесь использовать 2.0).

    • Предполагая, что вам не нужна конкретная версия, используйте последний поддерживаемый дистрибутив

      $ vi ~/project/gradle-wrapper.properties ... distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.Zip

    • Это может быть установлено в Android Studio в Предпочтения | Gradle (но 0.8.7 выдавал мне ошибки «неверное местоположение»).

    • «Обертка» - это просто копия Gradle для каждого проекта Android Studio. Это позволяет вам иметь Gradle 2 в вашей ОС и разные версии в ваших проектах. Документы для разработчиков Android объясняют, что здесь .
    • Затем настройте файлы build.gradle для plugin. Версия плагина Gradle должна быть совместима с версией дистрибутива/оболочки для всего проекта. Поскольку документация по инструментам (tools.Android.com/tech-docs/new-build-system/user-guide#TOC-Requirements) немного устарела, вы можете установить слишком низкую версию плагина (например, 0.8.0) и Android Studio выдаст ошибку с допустимым диапазоном для оболочки.

Например, в build.gradle у вас есть этот плагин:

dependencies {
    classpath "com.Android.tools.build:gradle:0.12.+"
}

Вы можете попробовать переключить его на точную версию, например так:

dependencies {
    classpath "com.Android.tools.build:gradle:0.12.2"
}

и (после записи, какую версию вы меняете в каждом случае), чтобы убедиться, что каждый файл build.gradle в вашем проекте использует одну и ту же версию плагина. Сохранение «+» должно работать (для 0.12.0, 0.12.1, 0.12.2 и т.д.), Но моя сборка прошла успешно, когда я обновил библиотеку Google Volley (изначально gradle: 0.8. +) И мой основной проект (изначально 0.12. +) к фиксированной версии: gradle: 0.12.2. 

Другие проверки

  1. Убедитесь, что в одном проекте нет двух модулей приложения Android

    • Это может взаимодействовать с окончательным решением (разные версии Gradle, выше) и вызывать

      UNEXPECTED TOP-LEVEL EXCEPTION: com.Android.dex.DexException: Multiple dex files define (various classes)

    • Чтобы проверить, построить | Make Project не должен всплывать в окне с вопросом, какое приложение вы хотите сделать.

  2. Признать недействительными ваши кеши
    • Файл | Недействительные кэши/перезапуск (stackoverflow.com/a/19223269/513413)
  3. Если шаг 2 не работает, удалите ~/.gradle/(www.wuttech.com/index.php/tag/groovy-lang-closure/)
    • Выйти из Android Studio
    • $ rm -rf ~/.gradle /
    • Запустите Android Studio, затем синхронизируйте:
      • Инструменты | Android | Синхронизировать проект с файлами Gradle
    • Повторите всю эту последовательность (выйти ... синхронизировать) несколько раз, прежде чем сдаться.
  4. Очистить проект
    • Построить | Чистый Проект

Если вы видите это ...

В моих последних сборках я продолжал видеть ужасные сбои (страницы исключений), но в течение нескольких секунд сообщения очищались, сборка проходила успешно и приложение развертывалось. Поскольку я никогда не мог объяснить это, и приложение работало, я никогда не замечал, что у меня есть два плагина Gradle в моем проекте. Так что я думаю, что плагины Gradle боролись друг с другом; один потерпел крах, другой потерял свое состояние и сообщил об ошибке.

Если у вас есть время, 1-часовое видео «Нежное введение в Gradle» (www.youtube.com/watch?v=OFUEb7pLLXw) действительно помогло мне приблизиться к файлам сборки Gradle, задачам, решениям по сборке и т.д.

Отказ

Я изучаю весь этот стек, на чужой ОС, после работы другой карьеры ... все в то же время и под давлением. В последние несколько месяцев я ударил каждую стену, я думаю, что Android имеет; Я был здесь довольно часто, и это мой первый пост. Я думал, что это было трудно исправить, поэтому я искренне извиняюсь, если качество моего ответа отражает трудности, с которыми я столкнулся при его получении.

60
ǝɲǝɲbρɯͽ

Загрузите образ системы (целевого уровня Android вашего проекта) из sdk manager для проекта, который вы импортировали.

Эта ошибка возникает, если у вас не установлен целевой SDK вашего проекта Android в папке SDK

например, Целевой уровень SDK вашего импортированного проекта может быть Android-19, а в папке sdk-> system-images у вас может быть установлен Android-21. поэтому вы должны загрузить образ системы Android-19 и другие файлы из sdk manager или скопировать и вставить его, если у вас есть образ системы. 

24
Ankit Bansal

Удалить:

<facet type="Android" name="Android">
    <configuration />
</facet>

в вашем имл файле Это подходит для меня.

https://plus.google.com/+AlexRuiz/posts/49hP3V9GSGe

13
toni

Это случилось со мной недавно, когда я закрыл один проект Android Studio и импортировал другой проект Eclipse. Казалось, что это какая-то ошибка в Android Studio, где она сохраняет некоторые настройки gradle из ранее открытого проекта, а затем запутывается в новом проекте.

Решение было предельно простым: закройте проект и полностью закройте Android Studio, прежде чем снова его открыть, а затем импортируйте/откройте новый проект. Все идет гладко с тех пор.

9
rehan

Простое исправление для меня было 

  1. Построить> Чистый проект
  2. Перезапустите Android Studio
4
holangun

Видимо эта ошибка имеет несколько причин. Вот что исправило это для меня.

Я выполнял команду сборки следующим образом:

./gradlew :testapp: build

Запуск без пробела исправил проблему:

./gradlew :testapp:build
3
David

Иногда, если вы открыли два окна Android Studio и пытаетесь скомпилировать, эта проблема может возникнуть. Для меня, когда я компилировал поддерживаемый модуль Google Cloud Endpoint, который не был встроен в проект, а был общим для разных проектов Android Studio, и когда несколько раз открывался экземпляр, эта ошибка возникла у меня. Но как только вы закроете другие окна, все будет хорошо. Иногда вам может потребоваться перезапустить Android Studio вообще.

2
Mohammed Mukhtar

Я получил эту ошибку при переключении с одной ветки Git на другую, а затем при попытке запустить «Чистый проект». Я использовал ack для поиска имени Задачи и нашел его в файле .iml.

Мое решение состояло в том, чтобы восстановить файл .iml проекта, щелкнув (в главном меню) Инструменты> Android> Синхронизировать проект с файлами Gradle. ( Благодаря этому ответу .)

2
Josh

В моем случае установка «версии Gradle», аналогичной «версии плагина Android» в «Файл» - «Структура проекта» -> «Проект», устранила проблему для меня.

2
somesh

Еще одно решение той же проблемы:

Это происходило со мной каждый раз, когда я импортировал проект Eclipse в студию с помощью мастера (версия студии 1.3.2).

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

Расстраивает, но надеюсь, что это кому-то поможет ...

1
Mick

Убедитесь, что у вас есть последние значения в ваших файлах Gradle. На момент написания статьи:

  • buildToolsVersion "21.1.2"

  • зависимости { classpath 'com.Android.tools.build:gradle:1.1.0'}

1
IgorGanapolsky

Проблема

Я специально получал ошибку "[module_name]:prepareDebugUnitTestDependencies" task not found каждый раз, когда запускал сборку gradle. Это случилось со мной после обновления моей Android Studio до 3.0.0.

Изучение

Ранее я добавлял параметры командной строки в компилятор на основе gradle, который вы можете найти в: Файл -> Настройки -> Сборка, Выполнение, Развертывание -> Компилятор -> Параметры командной строки . В частности, я исключил ряд задач, в том числе вышеупомянутую задачу. Хотя это работало нормально в предыдущей стабильной версии (2.3 в то время), похоже, что это было причиной сбоя сборки.

Решение

Это одно из многих возможных решений. Убедитесь, что у вас есть правильные параметры командной строки, указанные в настройках: Файл -> Параметры -> Построение, Выполнение, Развертывание -> Компилятор -> Параметры командной строки , и что ни один из них не вызывает эту проблему.

В моем случае я удалил исключение из этой задачи (и других задач, которые казались связанными), оставил несвязанные задачи исключенными, и это сработало!

1
Ace

Я удаляю/переименовываю папку .gradle в c:\users\Myuser\.gradle и перезагружаю Android Studio и работал у меня

0
ashkufaraz
  1. Открыть командную строку
  2. затем перейдите в папку вашего проекта через командную строку
  3. Введите Gradlew build и запустите
0
Krishan

По-видимому, эта проблема вызвана Android Studio в различных ситуациях, но причина в ошибке сборки При импорте существующего проекта в Android Studio. 

В моем случае я импортировал свой существующий проект, где я должен был установить несколько инструментов сборки, а затем, наконец, конфигурация сборки была выполнена с ошибкой. В этом случае просто сделайте следующее

  1. Закрыть текущий проект
  2. Файл> Создать> Импортировать проект (не использовать открытый недавний проект)

    Примечание: Я уверен, что такого рода ошибки нет в исходном коде, когда это произошло в Импортировать проект .
0
Deva

Задайте путь к корневой папке и после запуска команды ниже

ex : cd C:\Users\maha\Documents\gradle\gs-gradle-master\initial
0
Maha

Это то что я сделал

  1. Удалить папку .idea

    $ mv .idea .idea.bak

  2. Импортируйте проект снова

0
Ken Ratanachai S.