Я пытаюсь установить Maven на свой Mac, следуя этому руководству. Он дал мне следующие инструкции:
Установка переменных среды — JAVA_HOME и путь:
Откройте .bash_profile и добавьте в его конец следующие записи:
JAVA_HOME = "/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home"
PATH = "${JAVA_HOME}/bin:${PATH}"
export PATH
Затем следующий шаг Установка переменных среды Maven — M2_HOME и путь
Откройте .bash_profile в своем любимом текстовом редакторе и добавьте в его конец следующие строки.
export M2_HOME = "/Users/pankaj/Downloads/apache-maven-3.6.3"
PATH = "${M2_HOME}/bin:${PATH}"
export PATH
Итак, теперь мой окончательный профиль выглядит так:
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
export NVM_DIR = "$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
JAVA_HOME = "/library/java/javavirtualmachines/amazon-corretto-8.jdk/contents/home"
PATH = "${JAVA_HOME}/bin:${PATH}"
export PATH
export M2_HOME = "/users/khaled/desktop/repos/identity-theft-protection-binaries/apache-maven-3.1.1"
PATH = "${M2_HOME}/bin:${PATH}"
export PATH
Однако, когда я запускаю «mvn -version» в своем терминале, я получаю следующий вывод:
readlink: illegal option -- f
usage: readlink [-n] [file ...]
Warning: JAVA_HOME environment variable is not set.
Apache Maven 3.1.1 (0728685237757ffbf44136acec0402957f723d9a; 2013-09-17 11:22:22-0400)
Maven home: /users/khaled/desktop/repos/identity-theft-protection-binaries/apache-maven-3.1.1
Java version: 1.8.0_275, vendor: Amazon.com Inc.
Java home: /Library/Java/JavaVirtualMachines/amazon-corretto-8.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.15.7", arch: "x86_64", family: "mac"
В 3-й строке написано JAVA_HOME environment variable is not set.
, а в 7-й строке написано Java home: /Library/Java/JavaVirtualMachines/amazon-corretto-8.jdk/Contents/Home/jre
Я неправильно указал его в своем профиле? Могу ли я определить PATH
дважды таким образом и экспортировать его дважды? Или это неправильно?
Примечание. В учебнике, который я использовал, предполагается, что я использую bash, но я использую zsh.
@moffeltje о, вот и все! Я думаю, что учебник, который я использовал, просто упустил это, большое спасибо!
Без проблем! Я добавил это как ответ, пожалуйста, примите, если это помогло вам.
Кажется, вы не экспортируете переменную JAVA_HOME
в свой ZSH.
Попробуйте добавить export
перед переменной JAVA_HOME
следующим образом:
export JAVA_HOME = "/library/java/javavirtualmachines/amazon-corretto-8.jdk/contents/home"
Что произойдет, если вы добавите экспорт перед переменной java_home?
export JAVA_HOME = "/your/path/to/java"
?