首页 > 其他分享 >Mac 配置多版本JDK

Mac 配置多版本JDK

时间:2024-12-26 10:34:25浏览次数:3  
标签:JDK zshrc Mac 切换 版本 PATH HOME

@

目录


前言

请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i


提示:以下是本篇文章正文内容,下面案例可供参考

在Mac上配置多版本JDK可以通过以下步骤进行:

一、下载并安装多个JDK版本

友情链接: JDK下载 Oracle 共享账号

你可以从 OracleAdoptOpenJDK 下载你需要的JDK版本。安装完成后,这些JDK版本通常会被安装在 /Library/Java/JavaVirtualMachines 目录下。

二、配置环境变量

你可以通过修改 .zshrc 或 .bash_profile 文件来配置环境变量。以下是如何在 .zshrc 文件中配置多个JDK版本并在它们之间切换的示例:

# 打开终端并编辑 .zshrc 文件
nano ~/.zshrc

添加以下内容到文件中:

# 设置默认的JDK版本
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home

# 定义一个函数来切换JDK版本
function setjdk() {
    if [ $# -ne 0 ]; then
        removeFromPath '/System/Library/Frameworks/JavaVM.framework/Home/bin'
        removeFromPath '/Library/Java/JavaVirtualMachines/*/Contents/Home/bin'
        if [ -n "${JAVA_HOME+x}" ]; then
            removeFromPath $JAVA_HOME
        fi
        export JAVA_HOME=`/usr/libexec/java_home -v $@`
        export PATH=$JAVA_HOME/bin:$PATH
    fi
}

# 删除 PATH 中的旧 JDK 路径
function removeFromPath() {
    export PATH=$(echo $PATH | sed -E -e "s;:$1;;" -e "s;$1:?;;")
}

保存并退出编辑器,然后运行以下命令以使更改生效:

source ~/.zshrc

三、切换JDK版本

现在,你可以使用 setjdk 函数来切换JDK版本。例如:

# 切换到 JDK 8
setjdk 1.8

# 切换到 JDK 11
setjdk 11

# 切换到 JDK 16
setjdk 16

你可以通过以下命令来验证当前使用的JDK版本:

java -version

四、下篇预告!!!

在下一篇中介绍: 如何在Windows下如何配置多个JDK版本

总结

至此Mac配置多版本JDK实例介绍完成


我是南国以南i记录点滴每天成长一点点,学习是永无止境的!转载请附原文链接!!!

参考链接

标签:JDK,zshrc,Mac,切换,版本,PATH,HOME
From: https://www.cnblogs.com/bgyb/p/18627068

相关文章

  • 一起学Git【第六节:查看版本差异】
    gitdiff是Git版本控制系统中用于展示差异的强大工具。他可以用于查看文件在工作区、暂存区和版本库之间的差异、任意两个指定版本之间的差异和两个分支之间的差异等,接下来进行详细的介绍。1.显示工作区与暂存区之间的差异#显示工作区和暂存区之间的差异,后面不加参数git......
  • mac 提示 zsh: operation not permitted
    方法一:加执行权限chmod777eeyes-darwin方法二:加豁免权,使用xattr命令xattr-dcom.apple.quarantineeeyes-darwin操作如下:➜Eeyes-darwin./Eeyes-darwinzsh:operationnotpermitted:./Eeyes-darwin➜Eeyes-darwinchmod+xEeyes-darwin➜Eeyes-darwin./Eey......
  • PWN系列-2.27版本利用setcontext实现orw
    PWN系列-2.27版本利用setcontext实现orw知识开启沙箱之后,我们就只能用orw的方式来得到flag。这篇博客主要讲通过劫持__free_hook或者__malloc_hook利用setcontext在libc或者heap上执行rop或者shellcode。在free堆块的时候,rdi会指向堆块,在检测到__free_hook有值的情况下,会跳过......
  • windows nvm 切换node版本后,npm找不到
    前言在windows使用nvm,管理node版本时,nvminstall14.21.3后,发现在指定node版本的node_modules文件夹中没有对应的npm包,这时有两种方法解决,第一种配置自动下载npm,第二种手动下载npm更改配置文件,自动下载npm命令行运行:nvmroot显示出nvm的安装目录打开nvm文......
  • 一个 Bug JDK 居然改了十年?
    问题现象今天偶然看到了一个JDK的Bug,给大家分享一下。假设现在有如下的代码:List<String>list=newArrayList<>();list.add("1");Object[]array=list.toArray();array[0]=1;System.out.println(Arrays.toString(array));上面的代码是可以正常支执行的,如下图所......
  • python版本的Selenium的下载及chrome环境搭建和简单使用
    针对Python版本的Selenium下载及Chrome环境搭建和使用,以下将详细阐述具体步骤:一、Python版本的Selenium下载安装Python环境:确保系统上已经安装了Python3.8及以上版本。可以从[Python官方网站]下载并安装最新版本的Python,当然您也可以使用anaconda3进行安装python环境。......
  • Adobe Animate【AN】专业动画制作软件下载安装(附win/mac安装包)
    目录AdobeAN软件简介一、AdobeAN软件安装步骤1.系统要求2.下载AdobeAN二、AdobeAN的功能介绍1.动画创作功能2.音频与视频支持3.互动功能三、AdobeAN的应用领域1.网页动画和广告2.游戏开发3.教育与培训AdobeAN软件简介AdobeAN(AdobeAnimate)是一......
  • Adobe Photoshop(PS)图像处理和设计软件下载(附win/mac)
    AdobePhotoshop软件简介AdobePhotoshop,通常被称为PS,是由AdobeInc.开发的一款图像处理和设计软件。自1988年首次推出以来,Photoshop已成为全球最流行的图像编辑工具之一,广泛应用于摄影、平面设计、网页设计、数字艺术等多个领域。其强大的功能和丰富的插件支持,使得用户能够实......
  • Windows交叉编译MNN-3.0.0安卓版本库
    一、写在前面以下的步骤、流程都是基于MNN的文档,再结合自己的实践得出的,仅作为参考。博主的环境是windows10专业版MNN文档MNN的Github仓库地址二、下载MNN-3.0.0主库在GitHub仓库进行项目克隆,截至2024.12.25,最新版本就是为3.0.0:gitclonehttps://github.com/alibaba/MNN......
  • JDK-8中的JAVA_OPTS通常用于传递给JVM的启动参数
    在JDK8中,JAVA_OPTS通常用于传递给JVM的启动参数。以下是一些常见的JAVA_OPTS项及其说明:内存管理-Xms:设置Java堆的初始大小,例如-Xms512m。-Xmx:设置Java堆的最大大小,例如-Xmx1024m。-Xmn:设置年轻代的大小。-XX:PermSize=size:设置永久代的初始大小(在JDK8中被Metaspace取代......