Compose Desktop生成MSI文件失败:仅生成EXE无MSI文件
解决Compose Desktop无法生成MSI安装包的问题
1. 确认运行环境与依赖
- 必须在Windows系统上执行构建,MSI是Windows专属格式,Linux/macOS环境无法生成该格式安装包
- 安装Wix Toolset 3.x版本(Wix 4.x目前与Compose Desktop的Gradle插件兼容性不佳),安装完成后需确保
candle.exe和light.exe已添加到系统环境变量PATH中
2. 完善Gradle配置细节
补充Windows专属配置项,确保nativeDistributions配置完整:
compose.desktop { application { mainClass = "com.helper.MainKt" buildTypes.release.proguard { obfuscate.set(true) } nativeDistributions { targetFormats(TargetFormat.Msi, TargetFormat.Exe) packageName = "Helper" packageVersion = "1.0.0" // 可选但建议添加的Windows专属配置 windows { menuGroup = "Helper Tools" shortcut = true iconFile.set(file("src/main/resources/icon.ico")) // 需提前准备ICO格式应用图标 } } } }
3. 执行正确的Gradle任务
- 不要仅执行
createDistributable,MSI安装包对应的专属构建任务是packageMsi,直接运行:.\gradlew packageMsi - 生成的MSI文件默认路径:
build\compose\binaries\main\msi
4. 排查构建日志错误
如果任务执行失败,查看Gradle构建日志定位问题:
- 若提示找不到
candle.exe或light.exe,检查Wix Toolset是否正确安装并添加到系统PATH - 若提示版本格式错误,确保
packageVersion是x.x.x的三段式合法版本号
内容的提问来源于stack exchange,提问作者NullPointerException
相关产品推荐
相关产品推荐

