Целевой «$ {build.target}» не существует в проекте «LibA» при запуске Android build.xml от Gradle

У меня есть проект Android, который зависит от трех библиотек Android. Файл project.properties выглядит следующим образом:

split.density=false android.library.reference.2=..\\LibB proguard.config=proguard.cfg android.library.reference.1=..\\\\LibA\\\\ # Project target. target=android-5 android.library.reference.3=../LibC 

Build.xml этого проекта используется только для того, чтобы зависеть от задач Gradle:

 <target name="-pre-build" depends="preBuild" /> <target name="-pre-compile" depends="preCompile" /> <import file="${sdk.dir}/tools/ant/build.xml" /> 

И build.gradle включает в себя проект build.xml следующим образом:

 ant.property(file: 'local.properties') configurations { sdkDir = ant.properties['sdk.dir'] } ant.importBuild "build.xml" 

Когда я запускаю этот скрипт с целью «выпуска», я получаю следующую ошибку из файла build.xml от Android:

 [ERROR] [org.gradle.BuildExceptionReporter] Execution failed for task ':-build-setup'. [ERROR] [org.gradle.BuildExceptionReporter] Cause: The following error occurred while executing this line: [ERROR] [org.gradle.BuildExceptionReporter] Target "${build.target}" does not exist in the project "LibA". 

Который вызван линией 466 (той, которая содержит «субант»):

 <!-- compile the libraries if any --> <if> <condition> <isreference refid="project.libraries" /> </condition> <then> <echo>Building Libraries</echo> <subant buildpathref="project.libraries" antfile="build.xml" target="${build.target}" failonerror="true"/> <echo></echo> <echo>############################################</echo> <echo>**** Back to project ${ant.project.name} ****</echo> <echo>############################################</echo> </then> </if> 

Итак, вопрос: кто-нибудь знает, как избавиться от этой ошибки или как правильно использовать файл build.xml для Android в Gradle?

Gradle-android-plugin нарушен в настоящий момент для android sdk> = r14, и поэтому я ушел из него в зависимости от него. Я использую инструменты sdk r15.

ОБНОВИТЬ:

Кажется, что ни

 <target name="-set-release-mode" depends="-set-mode-check"> 

ни

 <target name="-set-debug-mode"> 

Вызывается в файле build.xml Android, но я не знаю почему.

Solutions Collecting From Web of "Целевой «$ {build.target}» не существует в проекте «LibA» при запуске Android build.xml от Gradle"

Я ничего не знаю об особенностях этой среды, но сообщение об ошибке означает, что ожидаемое свойство – build.target – не определено.

Я замечаю, что в файле свойств проекта у вас есть следующее:

 # Project target. target=android-5 

Он работает, если вы измените его на это?

 # Project target. build.target=android-5 

У меня была та же проблема и была решена, в том числе:

build.target = выпуск

В конце project.properties, как было предложено Orzech.

Я знаю, что это старый пост, но вопрос мой все еще возникает для кого-то. Build.target (s) – любая цель, определенная для создателя Ant. Если вы используете Eclipse, вы можете определить цели следующим образом:

Меню-> Выполнить-> Внешние Инструменты-> Внешние Инструменты Конфигурация-> Цели

Там вы выбираете фактические цели, которые должны быть созданы Ant.

Обратите внимание, что если ни один не определен, Eclipse заставит целевой объект справки.

Подробнее можно найти здесь: http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.platform.doc.user%2Fconcepts%2Fconcepts-exttools.htm