How to set or change the default Java (JDK) version on OS X?

后端 未结 28 2602
渐次进展
渐次进展 2020-11-22 15:55

How can you change the default version of Java on a mac?

28条回答
  •  一整个雨季
    2020-11-22 16:14

    JDK Switch Script

    I have adapted the answer from @Alex above and wrote the following to fix the code for Java 9.

    $ cat ~/.jdk
    #!/bin/bash
    
    #list available jdks
    alias jdks="/usr/libexec/java_home -V"
    # jdk version switching - e.g. `jdk 6` will switch to version 1.6
    function jdk() {
      echo "Switching java version $1";
    
      requestedVersion=$1
      oldStyleVersion=8
      # Set the version
      if [ $requestedVersion -gt $oldStyleVersion ]; then
        export JAVA_HOME=$(/usr/libexec/java_home -v $1);
      else
        export JAVA_HOME=`/usr/libexec/java_home -v 1.$1`;
      fi
    
      echo "Setting JAVA_HOME=$JAVA_HOME"
    
      which java
      java -version;
    }
    

    Switch to Java 8

    $ jdk 8
    Switching java version 8
    Setting JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home
    /usr/bin/java
    java version "1.8.0_131"
    Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
    Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
    

    Switch to Java 9

    $ jdk 9
    Switching java version 9
    Setting JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home
    /usr/bin/java
    java version "9.0.1"
    Java(TM) SE Runtime Environment (build 9.0.1+11)
    Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)
    

提交回复
热议问题