Mvn говорит: «Переменная среды JAVA_HOME определена неправильно» в WSLJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Mvn говорит: «Переменная среды JAVA_HOME определена неправильно» в WSL

Сообщение Anonymous »

Я хочу установить mvn в Ubuntu 22.04 на WLS в Windows. Я попробовал и отказался от использования двоичных файлов Windows и теперь пытаюсь установить Java и mvn непосредственно на wsl.
Я установил Corretto 17 как .deb с помощью:

Код: Выделить всё

wget https://corretto.aws/downloads/latest/amazon-corretto-17-x64-linux-jdk.deb
sudo dpkg -i amazon-corretto-17-x64-linux-jdk.deb
sudo apt-get install -f
и maven с

Код: Выделить всё

wget https://dlcdn.apache.org/maven/maven-3/3.9.4/binaries/apache-maven-3.9.4-bin.tar.gz
tar -xvf apache-maven-3.9.4-bin.tar.gz
sudo mv apache-maven-3.9.4 /opt/
Я добавил

Код: Выделить всё

JAVA_HOME='/usr/bin/java'
PATH="$JAVA_HOME/bin:$PATH"
export PATH

M2_HOME='/opt/apache-maven-3.9.4'
PATH="$M2_HOME/bin:$PATH"
export PATH
в .profile и источникd.
И java, кажется, относится к тому, который я только что установил:

Код: Выделить всё

$ java -version
openjdk version "17.0.8.1" 2023-08-22 LTS
OpenJDK Runtime Environment Corretto-17.0.8.8.1 (build 17.0.8.1+8-LTS)
OpenJDK 64-Bit Server VM Corretto-17.0.8.8.1 (build 17.0.8.1+8-LTS, mixed mode, sharing)
$ which java
/usr/bin/java
$ whereis -b java
java: /usr/bin/java /usr/share/java
аналогично для mvn

Код: Выделить всё

$ which mvn
/opt/apache-maven-3.9.4/bin/mvn
$ whereis -b mvn
mvn: /opt/apache-maven-3.9.4/bin/mvn /mnt/c/ProgramData/chocolatey/lib/maven/apache-maven-3.8.5/bin/mvn
хотя двоичный файл Windows появляется, он не находится на первом месте.
Однако, если я запускаю mvn -version, он говорит:

Код: Выделить всё

$ mvn -version
The JAVA_HOME environment variable is not defined correctly,
this environment variable is needed to run this program.
соответствующие части env (путь сокращен и переформатирован для удобства чтения:

Код: Выделить всё

JAVA_HOME=/usr/bin/java
WSLENV=
PATH=/opt/apache-maven-3.9.4/bin
:/usr/bin/java/bin
:/usr/bin/java/bin
:/usr/local/sbin
:/usr/local/bin
:/usr/sbin
:/usr/bin
:/usr/lib/wsl/lib
:/mnt/c/Program Files/Amazon Corretto/jdk17.0.1_12/bin
:/mnt/c/Program Files/Amazon Corretto/jdk11.0.8_10/bin
:/mnt/c/ProgramData/chocolatey/lib/maven/apache-maven-3.8.5/bin
Я экспортировал измененный PATH без двоичных файлов Windows, но ответ на mvn -version остается прежним.
Я хотел бы понять, что здесь происходит и как я могу исправить JAVA_HOME или, скорее, заставить mvn принять это.>

Подробнее здесь: https://stackoverflow.com/questions/769 ... tly-in-wsl
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»