#java #maven #java-home
#java #maven #java-home
Вопрос:
Я использую среду VPN для кода. Все работало нормально, но теперь я не могу выполнять maven
команды.
Ошибка, которую я получаю, это :
NB: JAVA_HOME should point to a JDK not a JRE
Теперь, когда я запускаю следующее: %JAVA_HOME%
я получаю следующее: C:Program Filesapache-maven-3.6.3bin
вместо C:Program FilesJavajdk1.8.0_251
И запуск : java -XshowSettings:properties version
Property settings:
awt.toolkit = sun.awt.windows.WToolkit
file.encoding = Cp1252
file.encoding.pkg = sun.io
file.separator =
java.awt.graphicsenv = sun.awt.Win32GraphicsEnvironment
java.awt.printerjob = sun.awt.windows.WPrinterJob
java.class.path = .
java.class.version = 52.0
java.endorsed.dirs = C:Program FilesJavajdk1.8.0_251jrelibendorsed
java.ext.dirs = C:Program FilesJavajdk1.8.0_251jrelibext
C:WINDOWSSunJavalibext
java.home = C:Program FilesJavajdk1.8.0_251jre
java.io.tmpdir = C:UsersLOCAL_~1.AHMTemp
java.library.path = C:Program FilesJavajdk1.8.0_251bin
C:WINDOWSSunJavabin
C:WINDOWSsystem32
C:WINDOWS
C:Python38Scripts
C:Python38
C:Program Filesnodejs
C:ProgramDatachocolateybin
C:Program Files (x86)Yarnbin
C:Program FilesJavajdk1.8.0_251bin
C:Program FilesJavajdk1.8.0_251jrebin
C:WINDOWSsystem32
C:WINDOWS
C:WINDOWSSystem32Wbem
C:WINDOWSSystem32WindowsPowerShellv1.0
C:WINDOWSSystem32OpenSSH
C:Program Filesapache-maven-3.6.3binbin
C:gradle-6.5bin
%M2_HOME%bin
C:Program Files (x86)sbtbin
C:Program FilesDockerDockerresourcesbin
C:ProgramDataDockerDesktopversion-bin
C:Program FilesPuTTY
C:Program FilesGitcmd
C:Program FilesMicrosoft Network Monitor 3
C:Program Filesapache-maven-3.6.3bin
C:Usersarqam.ahmadAppDataLocalMicrosoftWindowsApps
.
java.runtime.name = Java(TM) SE Runtime Environment
java.runtime.version = 1.8.0_251-b08
java.specification.name = Java Platform API Specification
java.specification.vendor = Oracle Corporation
java.specification.version = 1.8
java.vendor = Oracle Corporation
java.vendor.url = http://java.oracle.com/
java.vendor.url.bug = http://bugreport.sun.com/bugreport/
java.version = 1.8.0_251
java.vm.info = mixed mode
java.vm.name = Java HotSpot(TM) 64-Bit Server VM
java.vm.specification.name = Java Virtual Machine Specification
java.vm.specification.vendor = Oracle Corporation
java.vm.specification.version = 1.8
java.vm.vendor = Oracle Corporation
java.vm.version = 25.251-b08
line.separator = r n
os.arch = amd64
os.name = Windows Server 2019
os.version = 10.0
path.separator = ;
sun.arch.data.model = 64
sun.boot.class.path = C:Program FilesJavajdk1.8.0_251jrelibresources.jar
C:Program FilesJavajdk1.8.0_251jrelibrt.jar
C:Program FilesJavajdk1.8.0_251jrelibsunrsasign.jar
C:Program FilesJavajdk1.8.0_251jrelibjsse.jar
C:Program FilesJavajdk1.8.0_251jrelibjce.jar
C:Program FilesJavajdk1.8.0_251jrelibcharsets.jar
C:Program FilesJavajdk1.8.0_251jrelibjfr.jar
C:Program FilesJavajdk1.8.0_251jreclasses
sun.boot.library.path = C:Program FilesJavajdk1.8.0_251jrebin
sun.cpu.endian = little
sun.cpu.isalist = amd64
sun.desktop = windows
sun.io.unicode.encoding = UnicodeLittle
sun.java.launcher = SUN_STANDARD
sun.jnu.encoding = Cp1252
sun.management.compiler = HotSpot 64-Bit Tiered Compilers
sun.os.patch.level =
sun.stderr.encoding = cp437
sun.stdout.encoding = cp437
user.script =
user.timezone =
user.variant =
java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)
Путь Java_Home, похоже, является настройками администратора, которые я не могу изменить сам. Итак, есть ли что-нибудь, что я могу сделать для этой проблемы с моей стороны?
Комментарии:
1. либо получите права администратора, либо измените переменную для вашего пользователя
2. Странно, однако, почему %JAVA_HOME% ссылается на каталог Maven.
Ответ №1:
Изменен
Переменные среды
Надеюсь, проблема будет решена
Новая системная переменная
В моих случаях это выглядит так
Ответ №2:
Вы можете переопределить переменную JAVA_HOME, установив ее в файле сценария Maven.
Для этого отредактируйте mvn.cmd и добавьте следующую строку в начало файла:
set JAVA_HOME="C:Program FilesJavajdk1.8.0_251"
Ответ №3:
Добавьте физический путь jdk к переменной среды. Это должно решить проблему