Gradle: не удалось определить версию Java из 12 - PullRequest
1 голос
/ 03 апреля 2019

Я пытаюсь использовать gradle для запуска локального сервера на моем компьютере с Windows. У меня на локальном компьютере java версии 12

когда я бегу java -version

 java -version
java version "12" 2019-03-19
Java(TM) SE Runtime Environment (build 12+33)
Java HotSpot(TM) 64-Bit Server VM (build 12+33, mixed mode, sharing)

Я пытаюсь запустить gradle, чтобы увидеть, какую версию gradle я использую, и вот что я получаю.

 gradle bootRun --stacktrace

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine java version from '12'.

* Try:
Run with --info or --debug option to get more log output.

* Exception is:
java.lang.IllegalArgumentException: Could not determine java version from '12'.
        at org.gradle.api.JavaVersion.toVersion(JavaVersion.java:63)
        at org.gradle.api.JavaVersion.current(JavaVersion.java:72)
        at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:32)
        at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
        at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:206)
        at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169)
        at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
        at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
        at org.gradle.launcher.Main.doAction(Main.java:33)
        at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:567)
        at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54)
        at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35)
        at org.gra

dle.launcher.GradleMain.main(GradleMain.java:23)

Я не уверен, как это исправить. Я также добавил все в правильные переменные окружения

enter image description here

enter image description here

1 Ответ

3 голосов
/ 08 апреля 2019

Из вашего отчета ваш проект использует Gradle 2.8, выпущенный в октябре 2015 года.

Из-за своего возраста и необходимости разбора строк версии Java он не может распознать версию из виртуальной машины Java 12.

Вам потребуется:

  • Установить более старую версию Java, совместимую с вашим инструментом сборки и кодом, который он собирает,
  • Обновить версию Grade до болеепоследняя версия - Gradle 5.4 включает в себя поддержку Java 12.
  • Запустите сборку с совместимой версией Java и обновите ее до разветвленных задач, которые потребуются для работы с Java 12.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...