mac-m1-nacos-2适配问题

本文档介绍了在Mac M1芯片上遇到Nacos 2.x版本无法运行的问题,原因是M1芯片的JDK版本不兼容。解决方案包括使用Nacos 1.1.4版本或安装Intel版的JDK。通过Homebrew安装Intel版的JDK,并配置别名以在命令行中切换JDK版本。此外,还提供了修改Nacos启动脚本或使用命令行切换JDK版本的方法。最后,提到了在M1芯片上安装Rosetta的重要性。
摘要由CSDN通过智能技术生成

nacos 2.x版本无法在 mac-m1芯片上运行

此问题本质是 m1 芯片安装的 jdk 版本问题

  1. 注: 如果不想处理 jdk 版本问题, 直接使用 nacos-1.x 就可以了, 亲测 nacos-1.1.4 版本可以在 m1 环境正常使用.

  2. 这里以 jdk8 为例, nacos-2.x 目前无法在基于 m1 芯片的 jdk 上运行, 所以需要安装基于 intel 芯片的 jdk.

  3. 这里使用 homebrew 安装, 适配 m1 的 brew 只能安装适配 m1 的 jdk, 因此需要安装适配 x86 的 homebrew.
    参考文章: mac-m1 安装多个 homebrew
    配置 ~/.bash_profile 命令别名, 区分 intel-brew 和 m1-brew
    注: 配置文件修改后需要执行 source 命令才能生效

source ~/.bash_profile

在命令前加上 arch -x86_64 即表示在 x86 芯片环境下运行命令.

alias abrew='/opt/homebrew/bin/brew' # ARM Homebrew
alias ibrew='arch -x86_64 /usr/local/bin/brew' # X86 Homebrew

安装适配 intel 的 jdk-1.8: 这里使用 openjdk

ibrew tap AdoptOpenJDK/openjdk
ibrew install adoptopenjdk8 

安装为 .pkg 文件, 在 /usr/local/Caskroom/adoptopenjdk8/ 目录下, 双击安装即可,
安装后的 jdk 默认路径为 /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk

  1. 方式一: 最简单直接
    修改 nacos 启动脚本 startup.sh
    将源文件
export JAVA="$JAVA_HOME/bin/java"

中的 $JAVA_HOME 直接替换为适配 intel 芯片的 java-home 版本即可

在这里插入图片描述
方式二: 动态修改 jdk 版本
在这里插入图片描述
注: 此方式只在当前命令窗口有效.
执行对应的命令别名, 切换 jdk 版本(表示当前命令窗口所在的jdk环境)
比如下图:
默认情况下执行 java -version, 版本为 17; 执行 别名命令 jdk8 之后再次执行 java -version;
此时 jdk 版本替换为 1.8;

在这里插入图片描述

同理, 执行 别名命令 jdko 后, jdk 版本替换为 openjdk-1.8, 该版本为适配 intel 的 jdk

在这里插入图片描述
其他可参考的文章:
修改命令窗口配置
其他相关:
安装 rosetta: x86 程序在 m1 上运行需要依赖 rosetta

/usr/sbin/softwareupdate --install-rosetta --agree-to-license

nacos-github上的issue说明

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值