1. 安装GraalVM
根据实际使用的操作系统和jdk版本选择, 这里我选择了jdk17, os: windows
下载下面的第一个 “Oracle GraalVM Enterprise Edition JDK” 并解压到合适位置
进入bin目录执行
gu.cmd install native-image
从网络安装native-image库, 或者是把 Oracle GraalVM Enterprise Edition Native Image 文件下载下来然后本地进行安装2. 安装VS C++编译器
需要安装的组件为:
以及SDK
等待安装完成
3. 配置环境变量
PATH中添加:
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.16.27023\bin\HostX64\x64
INCLUDE中添加:
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.16.27023\include;
LIB中添加:
C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0\um\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0\ucrt\x64;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.16.27023\lib\x64;
IDE中环境变量配置当前使用的GRAALVM_HOME地址
4. 配置Gradle依赖以及打包插件
注意: 此项目使用SpringBoot3.0.0版本, 原生自带spring-native依赖, 如果是SpringBoot2.x.x版本则可能需要引入别的依赖
plugin中增加:
id 'org.graalvm.buildtools.native' version '0.9.16'
如果需要build镜像, 则可选配置:
tasks.named('bootBuildImage'){ buildpacks = ['gcr.io/paketo-buildpacks/bellsoft-liberica:9.9.0-ea', 'gcr.io/paketo-buildpacks/java-native-image'] }
5. Compile
一个CRUD的项目编译了6分钟…
编译完成后打开native目录, 其中exe文件就是可执行文件了
随便拷贝到别的任何windows服务器上, 双击执行