下载graalvm,解压并配置graalvm_home环境变量,若原有java_home需要将其指向graalvm_home:
GRAALVM_HOME=C:\graalvm-ee-java11-21.3.0
path=path;%GRAALVM_HOME%\bin
JAVA_HOME=%GRAALVM_HOME%
使用gu安装native-image:gu install native-image
创建编译测试代码HelloWorld.java:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
编译HelloWorld
javac HelloWorld.java
native-image HelloWorld
问题一:
在进行native-image编译过程中,可能会出现cl.exe缺失的问题。
Error: Default native-compiler executable 'cl.exe' not found via environment variable PATH
由官网介绍可知,在windows中使用native-image需要安装msvc2017-15.9或以上版本,可使用vs安装工具安装所需组件,vs下载地址
经实践,graalvm-ee-21.3.0在vs installer中下载如下组件。
安装完毕后,需要配置msvc的环境变量(大约在这个路径下,根据下载路径来改变)
MSVC=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.29.30133
cmd中执行cl
指令后出现以下提示,msvc则配置成功了
问题二:
fatal error C1034: stdio.h: 不包括路径集
需要添加window include
,window lib
的环境变量
WK10_INCLUDE=C:\Program Files (x86)\Windows Kits\10\Include\10.0.20348.0
WK10_LIB=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.20348.0
## 变量值必须为INCLUDE和LIB
INCLUDE=%WK10_INCLUDE%\ucrt;%WK10_INCLUDE%\um;%WK10_INCLUDE%\shared;%MSVC%\include
LIB=%WK10_LIB%\um\x64;%WK10_LIB%\ucrt\x64;%MSVC%\lib\x64
Visual Studio 2019 配置 MSVC 环境变量,使用命令行编译
使用msvc的cl工具编译程序,以及 “fatal error C1034: iostream: 不包括路径集”等问题解决