0

While I running cordova-run at first time after cordova installation and configuration by official guide instalattion: cordova installation guide, the folloe error was returned:

C:\ProjetosCordova\lsls>cordova run --debug
ANDROID_HOME=C:\Android\tools
JAVA_HOME=C:\Program Files\Java\jdk1.8.0_144
Subproject Path: CordovaLib
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:173)
    at com.android.build.gradle.BasePlugin.createAndroidTasks(BasePlugin.java:645)
    at com.android.build.gradle.BasePlugin$10.call(BasePlugin.java:608)
    at com.android.build.gradle.BasePlugin$10.call(BasePlugin.java:605)
    at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:156)
    at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:120)
BUILD FAILED

Total time: 1.353 secs

    at com.android.build.gradle.BasePlugin.lambda$createTasks$1(BasePlugin.java:603)
    at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:93)
    at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:82)
    at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:44)
    at org.gradle.internal.event.BroadcastDispatch.dispatch(BroadcastDispatch.java:79)
    at org.gradle.internal.event.BroadcastDispatch.dispatch(BroadcastDispatch.java:30)
    at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
    at com.sun.proxy.$Proxy16.afterEvaluate(Unknown Source)
    at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:82)
    at org.gradle.configuration.project.LifecycleProjectEvaluator.doConfigure(LifecycleProjectEvaluator.java:76)
    at org.gradle.configuration.project.LifecycleProjectEvaluator.access$000(LifecycleProjectEvaluator.java:33)
    at org.gradle.configuration.project.LifecycleProjectEvaluator$1.execute(LifecycleProjectEvaluator.java:53)
    at org.gradle.configuration.project.LifecycleProjectEvaluator$1.execute(LifecycleProjectEvaluator.java:50)
    at org.gradle.internal.Transformers$4.transform(Transformers.java:169)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:106)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:61)
    at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:50)
    at org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:628)
    at org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:129)
    at org.gradle.execution.TaskPathProjectEvaluator.configure(TaskPathProjectEvaluator.java:35)
    at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:60)
    at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:38)
    at org.gradle.initialization.DefaultGradleLauncher$1.execute(DefaultGradleLauncher.java:161)
    at org.gradle.initialization.DefaultGradleLauncher$1.execute(DefaultGradleLauncher.java:158)
    at org.gradle.internal.Transformers$4.transform(Transformers.java:169)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:106)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:56)
    at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:158)
    at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:119)
    at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:102)
    at org.gradle.launcher.exec.GradleBuildController.run(GradleBuildController.java:71)
    at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
    at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:41)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
    at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:75)
    at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:49)
    at org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:44)
    at org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:29)
    at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:67)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:47)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
    at org.gradle.util.Swapper.swap(Swapper.java:38)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
    at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:297)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
    at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)

FAILURE: Build failed with an exception.

* Where:
Script 'C:\ProjetosCordova\lsls\platforms\android\CordovaLib\cordova.gradle' 
line: 64

* What went wrong:
A problem occurred evaluating root project 'android'.
> No installed build tools found. Install the Android build tools version 
19.1.0 or higher.
  • Try: Run with --stacktrace option to get the stack trace. Run with --info or -- debug option to get more log output.

I tried the suggested commands, but the execution did not change and the error was the same. I want to run and generate the APK file, anyone can help me?

At i tried run android list sdk --all, I had this message:

C:\Users\octav>android list sdk --all
**************************************************************************
The "android" command is deprecated.
For manual SDK, AVD, and project management, please use Android Studio.
For command-line tools, use tools\bin\sdkmanager.bat
and tools\bin\avdmanager.bat
**************************************************************************

"android" SDK commands can be translated to sdkmanager commands on a best-effort 
basis.
(This prompt can be suppressed with the --use-sdk-wrapper commend-line argument
or by setting the USE_SDK_WRAPPER environment variable)
Continue? [y/N]:

Follow with "y":

build-tools;19.1.0
Description:        Android SDK Build-Tools 19.1
Version:            19.1.0
Installed Location: C:\Android\build-tools\19.1.0

build-tools;20.0.0
Description:        Android SDK Build-Tools 20
Version:            20.0.0
Installed Location: C:\Android\build-tools\20.0.0

build-tools;21.1.2
Description:        Android SDK Build-Tools 21.1.2
Version:            21.1.2
Installed Location: C:\Android\build-tools\21.1.2

build-tools;22.0.1
Description:        Android SDK Build-Tools 22.0.1
Version:            22.0.1
Installed Location: C:\Android\build-tools\22.0.1

build-tools;23.0.1
Description:        Android SDK Build-Tools 23.0.1
Version:            23.0.1
Installed Location: C:\Android\build-tools\23.0.1

build-tools;23.0.2
Description:        Android SDK Build-Tools 23.0.2
Version:            23.0.2
Installed Location: C:\Android\build-tools\23.0.2

build-tools;23.0.3
Description:        Android SDK Build-Tools 23.0.3
Version:            23.0.3
Installed Location: C:\Android\build-tools\23.0.3

build-tools;24.0.0
Description:        Android SDK Build-Tools 24
Version:            24.0.0
Installed Location: C:\Android\build-tools\24.0.0

build-tools;24.0.1
Description:        Android SDK Build-Tools 24.0.1
Version:            24.0.1
Installed Location: C:\Android\build-tools\24.0.1

build-tools;24.0.2
Description:        Android SDK Build-Tools 24.0.2
Version:            24.0.2
Installed Location: C:\Android\build-tools\24.0.2

build-tools;24.0.3
Description:        Android SDK Build-Tools 24.0.3
Version:            24.0.3
Installed Location: C:\Android\build-tools\24.0.3

build-tools;25.0.0
Description:        Android SDK Build-Tools 25
Version:            25.0.0
Installed Location: C:\Android\build-tools\25.0.0

build-tools;25.0.1
Description:        Android SDK Build-Tools 25.0.1
Version:            25.0.1
Installed Location: C:\Android\build-tools\25.0.1

build-tools;25.0.2
Description:        Android SDK Build-Tools 25.0.2
Version:            25.0.2
Installed Location: C:\Android\build-tools\25.0.2

build-tools;25.0.3
Description:        Android SDK Build-Tools 25.0.3
Version:            25.0.3
Installed Location: C:\Android\build-tools\25.0.3

build-tools;26.0.0
Description:        Android SDK Build-Tools 26
Version:            26.0.0
Installed Location: C:\Android\build-tools\26.0.0

build-tools;26.0.1
Description:        Android SDK Build-Tools 26.0.1
Version:            26.0.1
Installed Location: C:\Android\build-tools\26.0.1

When run echo %ANDROID_HOME%:

C:\Users\octav>echo %ANDROID_HOME%
C:\Android\tools

And echo %JAVA_HOME%:

C:\Users\octav>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.8.0_144

And this is part of my path:

path

Octavio Tosta
  • 11
  • 1
  • 3
  • Have a look at this question: https://stackoverflow.com/questions/31190355/ionic-build-android-error-no-installed-build-tools-found-please-install-the – David Sep 11 '17 at 23:02
  • I tried the tips of this post, but here everything is already updated, including the gradle. – Octavio Tosta Sep 12 '17 at 14:05
  • Then maybe your `PATH` still points to the wrong version. – David Sep 12 '17 at 14:10
  • Do you know what my path should look like? I added some variables to the path but I do not know if I added them all. I'm using windows – Octavio Tosta Sep 12 '17 at 14:29
  • The error is "No installed build tools found. Install the Android build tools version 19.1.0 or higher.". So, i tried running update andoid sdk (is allready installed, because i can see him in android folder) with follow command: android list sdk --all. So, the Android sdk are returned follow message: The "android" command is deprecated. For manual SDK, AVD, and project management, please use Android Studio. – Octavio Tosta Sep 12 '17 at 14:34
  • My `PATH` on windows for the build tools looks like this: `C:\Users\\AppData\Local\Android\sdk\build-tools\26.0.0`. – David Sep 12 '17 at 14:39
  • you add as ANDROID_HOME or just put it in the path? – Octavio Tosta Sep 12 '17 at 14:50
  • I added an image from my path at the end of the question – Octavio Tosta Sep 12 '17 at 14:56
  • I just added it to the path. If I remember correctly you just need to add `ANDROID_HOME` if you don't install the Android SDK at the default location. I thinks its all a bit messed up in your case by now, you can try and remove _everything_ related to Android and then follow the offical install guide here: https://developer.android.com/studio/install.html – David Sep 12 '17 at 15:01
  • Ok, i will remove all files from android studio and reinstall. I still post here today if the building worked. Thanks!!!! – Octavio Tosta Sep 12 '17 at 15:05
  • David, I realized that you have a certain experience with cordova. Could you give me your e-mail? I am working on a final work of my course and I will go very deep into the cordova world. If I could, could I have your help? – Octavio Tosta Sep 12 '17 at 15:10
  • I'm always glad to help but my email stays private. You can ask me on the cordova slack channel, I'm `david257`. – David Sep 12 '17 at 16:44
  • David, i had reinstall the android sdk and reconfigure my path. But, look this mensage when i try run "cordova run android": ANDROID_HOME=C:\Users\octav\AppData\Local\Android\sdk JAVA_HOME=C:\Program Files\Java\jdk1.8.0_144 Error: Cannot read property 'split' of undefined – Octavio Tosta Sep 14 '17 at 00:06
  • Try starting your emulator _before_ running your project. Or delete the emulator with API level 26 (which a guess is the default one) and create one with API level 25. – David Sep 14 '17 at 12:11

1 Answers1

-2

Here is a link where you can see how to set up env variable: https://cordova.apache.org/docs/en/dev/guide/platforms/android/index.html#requirements-and-support

Basically it's recommended (and I guess necessary) to set not only env variables, but to add to Windows paths the paths to tools and platform-tools folders, like so:

Setting environment variables

Cordova's CLI tools require some environment variables to be set in order to function correctly. The CLI will attempt to set these variables for you, but in certain cases you may need to set them manually. The following variables should be updated:

Set the `JAVA_HOME` environment variable to the location of your JDK installation
Set the `ANDROID_HOME` environment variable to the location of your Android SDK installation
It is also recommended that you add the Android SDK's `tools`, `tools/bin`, and `platform-tools` directories to your PATH