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

如何用Compose为全支持系统创建原生分发包并生成exe应用

Compose 桌面应用:生成exe与跨系统原生分发包方案

Windows平台:生成exe与MSI安装包

1. 配置build.gradle.kts

在桌面模块的构建脚本中,添加原生分发配置:

plugins {
    kotlin("jvm") version "1.9.20"
    id("org.jetbrains.compose") version "1.5.11"
}

compose.desktop {
    application {
        mainClass = "com.yourpackage.MainKt"
        
        nativeDistributions {
            targetFormats(TargetFormat.Msi, TargetFormat.Dmg, TargetFormat.Deb, TargetFormat.Rpm)
            packageName = "YourApp"
            packageVersion = "1.0.0"
            
            windows {
                // 可选:设置开始菜单分组、升级UUID、应用图标
                menuGroup = "YourAppGroup"
                upgradeUuid = "3F2504E0-4F89-11D3-9A0C-0305E82C3301" // 替换为自定义UUID
                iconFile.set(file("src/main/resources/app.ico"))
            }
        }
    }
}

2. 执行打包任务

  • 生成便携版exe:运行gradlew.bat packageDistributionForCurrentOS(Windows环境),产物在build/compose/binaries/main/app目录,直接拿到exe即可分享。
  • 生成MSI安装包:运行gradlew.bat createDistributable,产物在build/compose/binaries/main/msi目录,是标准Windows安装包。

跨系统原生分发包生成

macOS(DMG镜像)

在macOS环境下,确保构建脚本中包含TargetFormat.Dmg,运行./gradlew createDistributable,产物在build/compose/binaries/main/dmg,生成的DMG可直接作为分发安装包。

可添加macOS专属配置:

macOS {
    bundleID = "com.yourcompany.yourapp"
    iconFile.set(file("src/main/resources/app.icns"))
}

Linux(DEB/RPM包)

在Linux环境下,运行./gradlew createDistributable,构建脚本中配置的TargetFormat.Deb和TargetFormat.Rpm会生成对应格式包,产物分别在build/compose/binaries/main/deb、rpm目录。

Linux专属配置示例:

linux {
    iconFile.set(file("src/main/resources/app.png"))
    deb {
        maintainer = "Your Name <your@email.com>"
        description = "Your application description"
    }
}

关键注意事项

  • 必须使用JDK 17及以上版本,避免兼容性问题。
  • 图标需匹配系统格式:Windows用.ico,macOS用.icns,Linux用.png。
  • 官方推荐在目标系统环境下执行打包任务,跨系统交叉编译需要额外配置依赖,容易出问题。
  • 打包前先执行gradlew run验证应用正常运行,避免打包后出现启动故障。

内容的提问来源于stack exchange,提问作者Hadj Said Aoumer

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 09:42:29