32

我刚开始使用jenv,我关注了一篇博客文章,该文章解释了如何jenv在 MacOSX 上使用和设置多个 java 版本。但是我现在遇到的问题是设置 JAVA_HOME。当我使用切换 java 环境时,jenv我想确保JAVA_HOME我的 bash_profile 也相应地发生变化。

我怎么做?

我有关注我的~/.bash_profile

if which jenv > /dev/null; then eval "$(jenv init -)"; fi
4

3 回答 3

83

尝试“导出”插件:

jenv enable-plugin export

您可以在 jEnv Github 存储库 ( https://github.com/gcuisinier/jenv )中查看 Readme.md 中的导出插件部分

于 2016-03-26T17:06:52.313 回答
5

对我来说,启用export像 kimbaudi 这样的插件不起作用。将以下代码添加到.bash_profile(或.bashrc.zprofile.zshrc取决于您使用的外壳)为我完成了这项工作:

if which jenv > /dev/null; then eval "$(jenv init -)"; fi

这是在故障排除页面中,但他们似乎声明它在说明指南中,但事实并非如此。

于 2021-02-03T19:43:51.887 回答
3

您可以在~/.bash_profile文件中添加这些别名,并在不同的 JAVA 版本之间轻松切换。

export JAVA_8_HOME=$(/usr/libexec/java_home -v1.8)
export JAVA_11_HOME=$(/usr/libexec/java_home -v11)

alias java8='export JAVA_HOME=$JAVA_8_HOME'
alias java11='export JAVA_HOME=$JAVA_11_HOME’
  • 要检查系统中可用的 java 版本,请使用

    jenv versions
    
    jenv version
    
  • 您甚至可以通过在私有终端中使用以下命令为单个项目设置特定版本。

    jenv local 11.0
    

# 秒选项:-

从您的选择中下载采用 jdk file -> project structure -> project sdk ,然后在您的 .zshrc 中添加以下功能,以根据需要在不同版本之间切换。

[附上截图供参考:] :-

在此处输入图像描述

在不同的JDK版本之间切换

在 ~/.bashrc 或 ~/.zshrc 中添加以下函数

jdk() {
        version=$1
        export JAVA_HOME=$(/usr/libexec/java_home -v"$version");
        java -version
 }
  • 获取配置文件,您可以更改版本,如下所示:

jdk 1.8 jdk 9 jdk 11 jdk 13

于 2020-08-24T09:24:30.673 回答