1

I am trying to execute a gradle task(appengineDeploy) on eclipse. I have used the boilerplate code provided in this link. Also I followed the exact steps given in this video.(except in eclipse)

I am learning to implement google assistant action using Java. I get this error when I try to deploy.

:discoverMainScriptsExtensions

:compileKotlin FAILED

FAILURE: Build failed with an exception.

  • What went wrong: Execution failed for task ':compileKotlin'.

    Kotlin could not find the required JDK tools in the Java installation 'C:\Program Files\Java\jre1.8.0_221' used by Gradle. Make sure Gradle is running on a JDK, not JRE.

The Stacktrace:

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':compileKotlin'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62)
at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:60)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:97)
at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:87)
at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:123)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:79)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:104)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:98)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:626)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:581)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:98)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: org.gradle.api.GradleException: Kotlin could not find the required JDK tools in the Java installation 'C:\Program Files\Java\jre1.8.0_221' used by Gradle. Make sure Gradle is running on a JDK, not JRE.
at org.jetbrains.kotlin.gradle.tasks.JarSearchingUtilKt.findToolsJar(jarSearchingUtil.kt:95)
at org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompile.execute(Tasks.kt:255)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:46)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:121)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
... 29 more
Caused by: java.lang.ClassNotFoundException: com.sun.tools.javac.util.Context
at org.jetbrains.kotlin.gradle.tasks.JarSearchingUtilKt.findToolsJar(jarSearchingUtil.kt:92)
... 41 more

I am using JDK 1.8 and Gradle version is 6.2 and I believe searched everything relating to this. Almost similar issues I think we get in Android studio but nothing specific for Java and Eclipse. Any sort of help or guidance in a direction will be highly appreciated. Thanks.

PS: I on this issue since the past two days :'|.

Edit(1): Gradle Distribution: Gradle wrapper from target build Gradle Version: 4.3 Java Home: C:\Program Files\Java\jre1.8.0_221 JVM Arguments: None Program Arguments: --stacktrace Build Scans Enabled: false Offline Mode Enabled: false Gradle Tasks: appengineDeploy

Binary_Mode
  • 13
  • 1
  • 7

2 Answers2

0

The error you are seeing seems to be:

Caused by: org.gradle.api.GradleException: Kotlin could not find the required JDK tools in the Java installation 'C:\Program Files\Java\jre1.8.0_221' used by Gradle. Make sure Gradle is running on a JDK, not JRE.

It doesn't appear like you're using the JDK, which is a bit different from the default Java installation. You may want to download the JDK instead.

If you did download the JDK, it looks like your IDE is not pointing to the correct filepath. You may want to change the Java path in your program settings so that it can find the tools it needs.

Nick Felker
  • 11,536
  • 1
  • 21
  • 35
  • I did download the JDK. The eclipse also points to the JDK. But it still gives the same error. On having a closer look at the output I noticed Java Home value is still the same as 'C\Programs....'. But here is the fun part: The java home variable is set to the jdk folder. Is there any way of changing java home value OR running gradle on JDK .https://stackoverflow.com/questions/27861658/how-specify-the-required-java-version-in-a-gradle-build/27861773 – Binary_Mode Mar 24 '20 at 12:55
  • It seems like your Gradle or IDE settings may need to be updated. – Nick Felker Mar 24 '20 at 15:18
0

I don't know if its the correct solution but it worked for me.

  1. This issue was occurring in eclipse Photon. For some reason the "JAVA HOME" variable remained unchanged. You need to change the location of the project and then re-open it.
  2. Doing some research I found their might be a bug in eclipse which gives an error in ":compileKotlin". It is better to switch to Intellij for this project. It ran smoothly on it.

Hope it Helps!

Binary_Mode
  • 13
  • 1
  • 7