You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

M1 Mac执行./gradlew build失败:Groovy类初始化异常求助

问题:M1 Mac编译nrjavaserial项目时Groovy类初始化失败

我要安装COM端口连接“Extended”控制器(稳定方案),但设备插入后软件不显示COM3端口。找到nrjavaserial项目尝试解决,操作步骤如下:

  • 用git clone下载项目
  • 切换到项目目录:cd nrjavaserial
  • 执行构建命令:./gradlew build

但构建失败,报错信息:

问题原因:无法初始化类org.codehaus.groovy.runtime.InvokerHelper
异常信息:Exception java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.reflection.ReflectionCache [in thread "Daemon worker"]

环境:M1 Macbook Air,JDK版本为jdk-18.0.2.1.jdk


解决思路

1. 切换兼容的JDK版本

JDK 18属于高版本,老版本Gradle/Groovy对其支持较差。建议切换到JDK 11或JDK 8(LTS版本,兼容性更好):

  • 先执行java -version确认当前JDK版本
  • 用Mac自带命令切换,比如切换到JDK 11:
    export JAVA_HOME=`/usr/libexec/java_home -v 11`
    java -version
    
    切换完成后重新运行构建命令。

2. 升级项目Gradle版本

项目自带的gradlew版本可能过旧,适配不了高版本JDK或M1架构:

  • 执行命令升级Gradle wrapper到兼容版本(比如7.6):
    ./gradlew wrapper --gradle-version 7.6
    
  • 升级完成后重新执行./gradlew build

3. 开启Rosetta兼容终端

M1是ARM架构,部分老项目需要通过Rosetta兼容x86环境:

  • 右键终端应用→「显示简介」,勾选「使用Rosetta打开」
  • 重启终端后重新执行构建步骤

4. 手动安装Groovy依赖

如果是Groovy类缺失导致的问题,手动安装Groovy并配置环境:

  • 用Homebrew安装:brew install groovy
  • 执行groovy -version确认安装成功,再重新运行构建命令

内容的提问来源于stack exchange,提问作者AlexMad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 15:19:20