Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在mac os中更改java版本_Java_Macos - Fatal编程技术网

如何在mac os中更改java版本

如何在mac os中更改java版本,java,macos,Java,Macos,我的Java版本是15.0.1(默认),我想将其更改为Java8(1.8.0281) 我下载了java8,并尝试了几种方法,但版本没有改变 将/Library/Java/JavaVirtualMachines/jdk-15.0.1.jdk/Contents/Info.plist的名称更改为Info.plist.disabled 在~/.bash_配置文件中更改版本并运行source~/.bash_配置文件 在终端中写入导出JAVA_HOME=$(/usr/libexec/JAVA_HOME-

我的Java版本是15.0.1(默认),我想将其更改为Java8(1.8.0281)

我下载了java8,并尝试了几种方法,但版本没有改变

  • /Library/Java/JavaVirtualMachines/jdk-15.0.1.jdk/Contents/Info.plist的名称更改为
    Info.plist.disabled

  • 在~/.bash_配置文件中更改版本并运行
    source~/.bash_配置文件

  • 在终端中写入导出JAVA_HOME=$(/usr/libexec/JAVA_HOME-v1.8)

  • 我重新启动了终端,并运行java-version。。 但是仍然有
    openjdk版本“15.0.1”

    当我这样写时,
    /usr/libexec/java_home-V
    没有15.0.1。 它返回
    1.8.0_281(x86_64)“Oracle公司”-“Java SE 8”/Library/Java/JavaVirtualMachine/jdk1.8.0_281.jdk/Contents/Home

    在~/.zshrc中,没有版本信息。只是
    export PATH=“/usr/local/opt/openjdk/bin:$PATH”export PATH=“/usr/local/opt/openjdk/bin:$PATH”

    echo$JAVA_HOME show me
    /Library/Internet插件/JavaAppletPlugin.plugin/Contents/HOME

    如何更改java版本??请帮帮我
    (macOs是big-sur,11.2)

    在mac中,很简单,您可以有两个或多个java版本,并且可以根据您的需求进行更改

    我发现了一个非常有用的工具叫jenv

    如果您已经有自制软件(mac中的软件包安装程序),可以跳过此步骤

  • 用于安装或更新自制软件

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
    
  • 安装JEnv-java版本管理器是一个很酷的工具,它可以帮助您在mac上的多个java环境之间切换

    brew install jenv
    
  • 将jEnv添加到路径取决于您使用的shell ~/.bash_profile或~/.bashrc,对于zsh,它是~/.zshrc。在bash概要文件中添加这两行

    export PATH="$HOME/.jenv/bin:$PATH"
    eval "$(jenv init -)"
    
  • 重新启动终端或使用
    source~/.zshrc

  • 检查您的JEnv是否正确安装

    jenv doctor
    
    您将得到如下输出:正确加载了Jenv
    [OK]

  • 用于安装Java8

      brew cask install AdoptOpenJDK/openjdk/adoptopenjdk8
    
  • 用于安装Java11

    brew cask install AdoptOpenJDK/openjdk/adoptopenjdk11
    
  • 请列出您机器上的所有java

    /usr/libexec/java_home -V
    
  • 现在将这些路径添加到jENV

    Syntax: 
    jenv add <your_jdk_path>
    
    Example:
    jenv add /Library/Java/JavaVirtualMachines/openjdk-14.0.1.jdk/Contents/Home
    
  • 用于设置系统范围的java版本

     jenv global 14.0
    
  • 用于对终端进行本地设置

     jenv local 11
    
  • 如果您在项目中使用maven或gradle

      # ensure that JAVA_HOME is correct
      jenv enable-plugin 
    
      export# make Maven aware of the Java version in use 
      (and switch when your project does)
      jenv enable-plugin maven
    
  • 参考指南

    echo$PATH如何?@khelwood有/usr/local/opt/openjdk/bin:/usr/local/opt/openjdk/bin:/usr/local/bin:/usr/bin:/usr/sbin:/Library/Apple/usr/bin:/java
    1.8版在其中一个目录中。在您的.bash_配置文件中,是您的java_主环境变量(您说的是指向版本8的)是否附加到路径(例如导出路径=$PATH:$JAVA_HOME/bin)?另外,确保版本15的bin不在路径上。提示:不要手动下载JDK。使用brew之类的软件包管理器。
    
      # ensure that JAVA_HOME is correct
      jenv enable-plugin 
    
      export# make Maven aware of the Java version in use 
      (and switch when your project does)
      jenv enable-plugin maven