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

Ионная сборка Android: java.lang.IllegalStateException: buildToolsVersion не указывается

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

Failed to notify ProjectEvaluationListener.afterEvaluate(), but primary configuration failure takes precedence.
    java.lang.IllegalStateException: buildToolsVersion is not specified.
            at com.google.common.base.Preconditions.checkState(Preconditions.java:176)
            at com.android.build.gradle.BasePlugin.createAndroidTasks(BasePlugin.java:599)
            at com.android.build.gradle.BasePlugin$10$1.call(BasePlugin.java:566)
            at com.android.build.gradle.BasePlugin$10$1.call(BasePlugin.java:563)
            at com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:55)
            at com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:47)
            at com.android.build.gradle.BasePlugin$10.execute(BasePlugin.java:562)
            at com.android.build.gradle.BasePlugin$10.execute(BasePlugin.java:559)
            at org.gradle.listener.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:109)
            at org.gradle.listener.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:98)
            at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:83)
            at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:31)
            at org.gradle.messaging.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
            at com.sun.proxy.$Proxy12.afterEvaluate(Unknown Source)
            at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:79)
            at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:65)
            at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:504)
            at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:83)
            at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:42)
            at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:35)
            at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:129)
            at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:106)
            at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:86)
            at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:80)
            at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33)
            at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)
            at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:36)
            at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
            at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:47)
            at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
            at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119)
            at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:35)
            at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119)
            at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:24)
            at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119)
            at org.gradle.launcher.daemon.server.exec.StartStopIfBuildAndStop.execute(StartStopIfBuildAndStop.java:33)
            at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119)
            at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:71)
            at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:69)
            at org.gradle.util.Swapper.swap(Swapper.java:38)
            at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:69)
            at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119)
            at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
            at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
            at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119)
            at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:70)
            at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
            at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119)
            at org.gradle.launcher.daemon.server.exec.DaemonHygieneAction.execute(DaemonHygieneAction.java:39)
            at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119)
            at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:46)
            at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:246)
            at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
            at java.lang.Thread.run(Thread.java:745)

    FAILURE: Build failed with an exception.

Я уже пытался установить buildToolsVersion в файле config.xml, но без каких-либо успехов. Раньше у кого-то была такая же проблема?

4b9b3361

Ответ 1

Я понял, проблема возникла из-за неверно сконфигурированной записи config.xml:

<widget xmlns="http://www.w3.org/ns/widgets"
        xmlns:cdv="http://cordova.apache.org/ns/1.0"
        id="ch.papers.test"
        version="1.0.{BUILD_NUMBER}"
        android-versionCode="{BUILD_NUMBER}">...

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

Обновить исправленную версию:

<widget xmlns="http://www.w3.org/ns/widgets"
        xmlns:cdv="http://cordova.apache.org/ns/1.0"
        id="ch.papers.test"
        version="1.0.0"
        android-versionCode="1">...

Ответ 2

Я решил эту проблему, сохранив build.gradle и/или build-extras.gradle с окончанием строки Unix (LF). Ваша версия android-версия не должна иметь ничего общего с buildversion вашего Android-sdk...

Ответ 3

У меня была такая же проблема. Я исправил его следующим образом: -

Откройте конфигурацию студии Android.

Перейдите в конфигурацию > SDK Manager > Android SDK > SDK Tools и установите Android SDK Build-Tools.

Проверьте переменную ANDROID_HOME. Я нахожусь на mac, поэтому он указывает на "/Users/user_name/Library/Android/sdk/"

Если он не установлен правильно, установите его следующим образом: -

export ANDROID_HOME = "/Пользователи/имя_пользователя/Library/Android/sdk/"

Теперь создайте его снова, и он будет работать нормально.

PS: Получение android sdk при установке Android Studio рекомендуется, чем установка sdk вручную. Таким образом, вы не столкнетесь с ненужными проблемами.

Ответ 4

Я столкнулся с этой проблемой. Проблема заключалась в том, что мой путь ANDROID_HOME указывал на папку Android Studio. Я изменил его, указав на свою папку Android SDK, и проблема была решена.

  • Проверьте свой ANDROID_HOME:

echo $ANDROID_HOME

  1. Он должен указать на папку Android SDK:

экспортировать ANDROID_HOME = "your-android-sdk-folder"