Я выполняю следующую команду: sudo ionic cordova build android
И появляется следующее:
Не удалось уведомить ProjectEvaluationListener.afterEvaluate (), но первичная ошибка конфигурации требуетстаршинство. java.lang.IllegalStateException: buildToolsVersion не указано. на com.google.common.base.Preconditions.checkState (Preconditions.java:173) на com.android.build.gradle.BasePlugin.createAndroidTasks (BasePlugin.java:645) на com.android.build.gradle.BasePlugin $ 10. вызов (BasePlugin.java:608) на com.android.build.gradle.BasePlugin $ 10.call (BasePlugin.java:605) на com.android.builder.profile.ThreadRecorder.record (ThreadRecorder.java:156) на ком. android.builder.profile.ThreadRecorder.record (ThreadRecorder.java:120) в com.android.build.gradle.BasePlugin.lambda $ createTasks $ 1 (BasePlugin.java:603) в org.gradle.internal.event.BroadcastDispatch $ ActionlervocationH.dispatch (BroadcastDispatch.java:93) в org.gradle.internal.event.BroadcastDispatch $ ActionInvocationHandler.dispatch (BroadcastDispatch.java:82) в org.gradle.internal.event.AbstractBroadcastDispatch.dispatch: atB)org.gradle.internal.event.BroadcastDispatch.dispatch (BroadcastDispatch.java:79) в org.gradle.internal.event.BroadcastDispatch.dispatch (BroadcastDispatch.java: 30) в org.gradle.internal.dispatch.ProxyDispatchAdapter $ DispatchingInvocationHandler.invoke (ProxyDispatchAdapter.java:93) в com.sun.proxy. $ Proxy16.afterEvaluate (Неизвестный источник) в org.gradle.conflation.Project.valuject.notifyAfterEvaluate (LifecycleProjectEvaluator.java:82) в org.gradle.configuration.project.LifecycleProjectEvaluator.doConfigure (LifecycleProjectEvaluator.java:76) в org.gradle.configuration.project.LifecycleProjectEvaluator.access $ 000 (Lifecyclegava:).gradle.configuration.project.LifecycleProjectEvaluator $ 1.execute (LifecycleProjectEvaluator.java:53) в org.gradle.configuration.project.LifecycleProjectEvaluator $ 1.execute (LifecycleProjectEvaluator.java:50) в org.gradle.internal.Transformers $ 4.tTransformers.java:169) в org.gradle.internal.progress.DefaultBuildOperationExecutor.run (DefaultBuildOperationExecutor.java:106) в org.gradle.internal.progress.DefaultBuildOperationExecutor.run (DefaultBuildOperationExecuto)r.java:61) в org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate (LifecycleProjectEvaluator.java:50) в org.gradle.api.internal.project.DefaultProject.evaluate (DefaultProject.java:628) в org.gradle.api.internal.project.DefaultProject.evaluate (DefaultProject.java:129) в org.gradle.execution.TaskPathProjectEvaluator.configure (TaskPathProjectEvaluator.java:35) в org.gradle.execution.TaskPathProjectEvaluator.conator.jpg. Java: 158) в org.gradle.internal.Transformers $ 4.transform (Transformers.java:169) в org.gradle.internal.progress.DefaultBuildOperationExecutor.run (DefaultBuildOperationExecutor.java:106) в org.gradle.internal.progress. DefaultBuildOperationExecutor.run (DefaultBuildOperationExecutor.java:56) в org.gradle.initialization.DefaultGradleLauncher.doBuildStages (DefaultGradleLauncher.java:158) в org.gradle.initialization.DefaultGradleLauncher.doBuild (DefaultGradleLauncher)в org.gradle.initialization.DefaultGradleLauncher.run (DefaultGradleLauncher.java:102) в org.gradle.launcher.exec.GradleBuildController.run (GradleBuildController.java:71) в org.gradle.tooling.runner(ExecuteBuildActionRunner.java:28) в org.gradle.launcher.exec.ChainingBuildActionRunner.run (ChainingBuildActionRunner.java:35) в org.gradle.launcher.exec.InProcessBuildActionExecuter.execute (InProcessBuildjgra. launcher.exec.InProcessBuildActionExecuter.execute (InProcessBuildActionExecuter.java:26) в org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.extete (ContinuousBuildActionExecuter.java:75) в org.ontinContinuousBuildActionExecuter.java:49) в org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute (ServicesSetupBuildActionExecuter.java:44) в org.gradle.tooling.internal.provider.SildvicesAetupButer.execute (ServicesSetupBuildActionExecuter.java:29) в org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild (ExecuteBuild.java:67) в org.gradle.launcher.daemon.server.exec.BuildCommandOnly.exBuildCommandOnly.java:36) в org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed (DaemonCommandExecution.java:120) в org.gradle.launcher.daemon.server.exec.WatchForDisconnection.java47) в org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed (DaemonCommandExecution.java:120) в org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute (ResetDeprecationL26ger.java) jj.gradle.launcher.daemon. .daemon.server.api.DaemonCommandExecution.proceed (DaemonCommandExecution.java:120) в org.gradle.launcher.daemon.server.exec.ForwardClientInput $ 2.call (ForwardClientInput.java:74) в org.gradle.launcher.daemon.server.exec.ForwardClientInput $ 2.call (ForwardClientInput.java:72) в org.gradle.util. Swapper.swap (Swapper.java:38) в org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute (ForwardClientInput.java:72) в org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed (DaemonCommandExecution.java:120) в org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute (LogAndCheckHealth.java:55) в org.gradle.launcher.daemon.server.api.DaemonCommandExecution:120) в org.gradle.launcher.daemon.server.exec.LogToClient.doBuild (LogToClient.java:60) в org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute (BuildCommandOnly.java:36) в org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed (DaemonCommandExecution.java:120) в org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild (EstablishBuildEnviron). ment.java:72) в org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute (BuildCommandOnly.java:36) в org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed (DaemonCommandExecu:120) в org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy $ 1.run (StartBuildOrRespondWithBusy.java:50) в org.gradle.launcher.daemon.server.DaemonStateCoordinator $ 1.rj: координатор да (0) org: координатор (7) юг. .gradle.internal.concurrent.ExecutorPolicy $ CatchAndRecordFailures.onExecute (ExecutorPolicy.java:54) в org.gradle.internal.concurrent.StoppableExecutorImpl $ 1.run (StoppableExecutorImpl.java:40)в java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1149) в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:624) в java.lang.Thread.run (поток)
FAILURE: сборка не удалась, исключение.
Моя информация:
Ionic:
Ionic CLI: 5.4.4 (/ usr /local / lib / node_modules / ionic)
Ionic Framework: ионно-угловой 3.9.2 @ ionic / app-scripts: 3.1.0
Cordova:
Cordova CLI: 9.0.0(cordova-lib@9.0.1) Платформы Cordova: android 6.3.0, ios 4.3.1 Плагины Cordova: cordova-plugin-ionic-webview 1.1.1, (и 12 других плагинов)
Утилита:
cordova-res: не установлено "родной" запуск: не установлено
Система:
Android SDK Инструменты: 25.2.3 (/ Users / Salvador / Library / Android / sdk)
NodeJS: v9.8.0 (/ usr / local / bin / node) npm
: 6.11.3 ОС: macOS Mojave Xcode: Xcode 10.3 Версия сборки 10G8
Я ожидаю создания файла APK.