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

Github Actions中IntelliJ插件compileKotlin构建因Java堆空间失败

解决IntelliJ插件构建中GitHub Actions的Java堆空间问题

针对你在GitHub Actions中构建IntelliJ插件时遇到的Java堆空间错误(仅在2022.3.1+版本IDE复现),可以通过以下配置调整解决:

1. 修正GitHub Actions环境变量配置

之前的DEFAULT_JVM_OPTS不会被Gradle识别,需要调整为Gradle官方认可的环境变量,同时确保Kotlin守护进程的内存参数生效:

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Setup Java
        uses: actions/setup-java@v3
        with:
          distribution: zulu
          java-version: 11
          cache: gradle

      - name: Build and Verify Plugin
        env:
          CI_BUILD_PLUGIN: true
          # 设置Gradle自身的JVM堆内存
          GRADLE_OPTS: "-Xmx5g -Xms5g"
          # 单独设置Kotlin守护进程的堆内存
          KOTLIN_DAEMON_OPTS: "-Xmx5g"
        run: |
          ./gradlew check
          ./gradlew runPluginVerifier

2. 添加项目级Gradle配置(推荐)

在项目根目录的gradle.properties中添加全局JVM参数,确保所有构建场景(包括本地和CI)都使用一致的内存配置:

# Gradle自身的JVM参数
org.gradle.jvmargs=-Xmx5g -Xms5g
# 启用并行构建提升效率
org.gradle.parallel=true
# Kotlin守护进程的JVM参数
kotlin.daemon.jvm.options=-Xmx5g

关键原因说明

  • 高版本IntelliJ IDEA(2022.3+)的依赖包体积显著增大,ClasspathEntrySnapshotTransform任务在处理app.jar时需要更多内存,超出了默认堆限制。
  • DEFAULT_JVM_OPTS并非Gradle的标准环境变量,之前的设置无法传递给Gradle进程;GRADLE_OPTS和gradle.properties中的org.gradle.jvmargs才是Gradle识别的堆内存配置入口。
  • Kotlin守护进程有独立的内存配置,单独设置KOTLIN_DAEMON_OPTS或kotlin.daemon.jvm.options可以确保编译Kotlin代码时不会出现堆不足。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 22:24:56