准备篇-使用GraalVM

安装GraalVM

- GraalVM
- Maven 3.8.1+
- Docker
- C开发环境

特别提醒:GraalVM最终把代码编译为直接执行的文件,然后可以脱离JVM,直接在本地运行,也就是所谓的原生文件。此文件并不跨平台,只能运行在编译的系统之上。本系统的开发环境是windows 10,而我们最终的结果是使用linux(docker)来运行程序,所以GraalVM必须在linux环境中执行。那我们是否需要安装一个linux操作系统呢?答案是否,我们可以使用windows的WSL

安装WSL
Windows Subsystem for Linux,实际就是windows里的linux,我们可以选择不同的linux发行版本,然后使用Windows Terminal或MobaXterm连接该linux即可正常使用

WSL中的docker环境与Windows的docker环境是相同的,即在一个环境中生成镜像,另一个环境即可使用
安装教程:Install WSL | Microsoft Docs
升级教程:Manual installation steps for older versions of WSL | Microsoft Docs

安装C开发环境
# Debian-based distributions:
sudo apt-get install build-essential libz-dev zlib1g-dev

使用WSL
以MobaXterm为例,新建Session,在WSL的选择Distribution为安装的linux发行版即可

配置GraalVM

- 配置环境变量 GRAALVM_HOME
- 安装native-image ${GRAALVM_HOME}/bin/gu install native-image
- [可选]配置环境变量 JAVA_HOME=${GRAALVM_HOME}
- [可选]配置环境变量 PATH=${GRAALVM}/bin:$PATH
- 安装并配置maven

编译代码

./mvnw package -Dnative
mvn clean package -Dquarkus.package.type=native

常见问题

- windows和wsl互相访问
windows访问wsl:在文件资源管理器中输入\\wsl$,如果没有文件,可能是wsl没有开启
wsl访问windows:cd /mnt/d/...

- 彻底关闭wsl
如果关闭wsl后,任务管理器中仍存在Vmmem进程,则需要执行wsl --shutdown强制管理wsl

- maven install本地jar没有保存至repository
需要修改maven对应的settings.xml,修改为可用路径



Quarkus - Building a Native Executable

你可能感兴趣的:(准备篇-使用GraalVM)