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

Kotlin Multiplatform构建desktopApp时packageDistribution任务失败求助

针对你遇到的desktopApp:packageDistributionForCurrentOS任务失败问题,核心原因是jlink工具无法找到JDK的jmods目录(JRE没有这个目录,必须用完整JDK),以下是具体解决步骤:

  • 确认使用完整JDK而非JRE
    检查JAVA_HOME环境变量是否指向完整JDK的根目录(比如C:\Program Files\Java\jdk-17.0.6),JRE不包含jmods文件夹,会直接导致jlink报错。

  • 在Gradle中显式指定JDK路径
    可以通过两种方式配置:

    1. 项目根目录的gradle.properties中添加:
      org.gradle.java.home=C:/Program Files/Java/jdk-17.0.6
      
    2. 在desktop模块的build.gradle.kts里的nativeDistributions配置中指定runtimeJdk:
      compose.desktop {
          application {
              mainClass = "你的主类全路径"
              nativeDistributions {
                  runtimeJdk.set(file("C:/Program Files/Java/jdk-17.0.6"))
                  // 其他分发配置
              }
          }
      }
      
  • 修正IDE的Gradle JVM配置
    在IntelliJ中打开File > Settings > Build, Execution, Deployment > Build Tools > Gradle,确保Gradle JVM选择的是完整JDK,而非JRE。

  • 彻底清理Gradle缓存
    执行命令:

    gradlew.bat clean build --no-build-cache
    

    或者手动删除用户目录下的.gradle/caches文件夹,避免缓存的错误配置影响构建。

  • 验证JDK完整性
    打开JDK根目录,确认存在jmods文件夹且包含java.base.jmod等模块文件。如果缺失,重新下载安装官方JDK(比如Adoptium、Oracle OpenJDK)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 19:42:10