奇思妙想 · 2024年 5月 25日 0

如何轻松切换不同Java版本?

59 次浏览

虽然可以手写脚本在必要的时候切换成需要的Java版本,也可以利用update-alternatives命令协助切换。

  • 获取当前Java版本(如下为java11)
    update-alternatives --display java
    link java is /usr/bin/java
    /usr/lib/jvm/java-11-openjdk-amd64/bin/java - priority 1111
  • 增加新的java/javac/javap (如下示例是jdk23)版本,设定优先级为2000以优先使用
    sudo update-alternatives --install /usr/bin/java java /myjdk23/bin/java 2000
    sudo update-alternatives --install /usr/bin/javac javac /myjdk23/bin/javac 2000
    sudo update-alternatives --install /usr/bin/javap javap /myjdk23/bin/javap 2000
  • 确认默认是JDK 23
    java -version
    "openjdk 23-internal 2024-09-17"

切回到原来的版本(以java为例,javac/javap类似)

  • sudo update-alternatives --config java
    "Selection Path Priority Status
    *0 /myjdk23/bin/java 2000 auto mode
    1 /myjdk23/bin/java 2000 manual mode
    2 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode
    "

    - 如上,默认是0,输入2即可切换到java11.