如何在Linux(Ubuntu)上用Quarkus Native构建Windows可执行文件
在Linux(Ubuntu)上用Quarkus Native构建Windows可执行文件
步骤1:安装Windows交叉编译工具链
Ubuntu环境下需要先安装mingw-w64工具链,它提供了编译Windows目标程序所需的gcc/g++工具:
sudo apt update && sudo apt install -y mingw-w64
步骤2:修改Quarkus构建命令
在你原有的构建命令基础上,添加Quarkus Native的目标平台参数,指定目标操作系统为Windows、目标架构为x86_64(如果需要适配ARM架构,可替换为aarch64):
mvn clean install -Dnative -DskipTests -Dquarkus.profile=dev -Dquarkus.native.target-os=windows -Dquarkus.native.target-arch=x86_64
可选:手动指定工具链路径(自动检测失败时)
如果GraalVM无法自动识别mingw工具链,可手动指定gcc和g++的路径:
mvn clean install -Dnative -DskipTests -Dquarkus.profile=dev \ -Dquarkus.native.target-os=windows -Dquarkus.native.target-arch=x86_64 \ -Dquarkus.native.windows.x86_64.gcc-path=/usr/bin/x86_64-w64-mingw32-gcc \ -Dquarkus.native.windows.x86_64.g++-path=/usr/bin/x86_64-w64-mingw32-g++
验证结果
构建完成后,target目录下会生成app-runner.exe文件,这就是可直接在Windows系统运行的原生可执行程序。
注意事项
- 确保使用的Java 17版本GraalVM支持交叉编译,推荐使用GraalVM 22.3及以上版本
- 部分Quarkus扩展可能对交叉编译有兼容性限制,若构建失败可检查对应扩展的文档确认支持情况
内容的提问来源于stack exchange,提问作者Hapaja
相关产品推荐
相关产品推荐

