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

执行gradle dependencyUpdates时守护进程启动失败如何解决?

解决Gradle Daemon启动失败(Unrecognized VM option 'MaxPermSize=2048m')

问题根源

-XX:MaxPermSize=2048m是Java 8及更早版本的JVM参数,Java 9+已移除永久代(PermGen)、改用元空间(Metaspace),因此该参数在Java 11/17中不被识别。同时你的环境存在JDK版本不一致问题:本地默认Java是11.0.7,但Gradle启动Daemon时调用的是OpenJDK 17的路径。

解决方案

1. 移除无效的JVM参数

MaxPermSize参数通常来自以下位置,逐一检查并删除:

  • 环境变量:
    运行以下命令查看变量内容:

    echo $GRADLE_OPTS
    echo $JAVA_OPTS
    

    如果输出中包含-XX:MaxPermSize=2048m,编辑你的shell配置文件(如~/.bashrc、~/.zshrc),删除该参数后重启终端。

  • Gradle配置文件:

    • 项目根目录下的gradle.properties:找到org.gradle.jvmargs行,移除其中的-XX:MaxPermSize=2048m
    • 用户全局配置~/.gradle/gradle.properties(Mac/Linux)或C:\Users\<用户名>\.gradle\gradle.properties(Windows):同样检查并删除该参数

2. 统一Gradle使用的JDK版本

确保Gradle使用的JDK与你本地默认的Java 11一致:

  • 在项目根目录的gradle.properties中添加:

    org.gradle.java.home=/path/to/your/adoptopenjdk11
    

    替换为你实际的Java 11安装路径(例如/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home)

  • 或者设置环境变量JAVA_HOME为Java 11的路径,重启终端后再运行Gradle命令。

3. 验证修复

运行以下命令测试:

gradle dependencyUpdates

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 00:55:20