Я хочу скомпилировать свое приложение из командной строки, а не из Android Studio.
Мое приложение отлично работает, когда я запускаю его из Android Studio на моем устройстве / эмуляторе, однако, когда я пытаюсь сделать:
gradlew build
Я получаю:
> Task :app:kaptGenerateStubsReleaseKotlin FAILED
Caught an exception trying to connect to Kotlin Daemon
org.gradle.api.GradleException: Kotlin could not find the required JDK tools in the Java installation 'C:\Program Files (x86)\Java\jre1.8.0_191' 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.compilerRunner.GradleCompilerEnvironment$toolsJar$2.invoke(GradleCompilerEnvironment.kt:23)
at org.jetbrains.kotlin.compilerRunner.GradleCompilerEnvironment$toolsJar$2.invoke(GradleCompilerEnvironment.kt:17)
at kotlin.SynchronizedLazyImpl.getValue(Lazy.kt:131)
...
Вот мой JAVA_HOME env var:
JAVA_HOME=C:\Program Files (x86)\Java\jre1.8.0_191
Это на самом деле JRE (а не JDK), но когда я меняю свой env var на JDK следующим образом:
JAVA_HOME=C:\Program Files\Java\jdk-11.0.1
И я запускаю:
gradlew build
Тогда я получаю:
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine java version from '11.0.1'.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org