在 Linux 上安装和配置 GraalVM
本文最后更新于 2024年5月3日 13:28
GraalVM 是一个高性能的通用虚拟机,支持 Java、JavaScript、Python、Ruby、R、WebAssembly 等多种语言。通过它你可以将 Java 程序编译成本地二进制文件,大大提高程序的启动速度和运行效率。本文介绍如何在 Linux 系统上安装配置 GraalVM.
截止到文章发布时,GraalVM 仍没有在 Debian 和 Archlinux 的官方仓库中发布,不能直接通过包管理器安装,需要我们手动下载。而 GraalVM 的 Community Edition
版本,是 GraalVM 的开源版本,与 OpenJDK
类似。本文将其作为 GraalVM 演示。
1. 下载 GraalVM
访问 GraalVM Community’s builds 下载页面,选择你需要的 JDK 版本。截止到文章发布时,最新的 JDK LTS
版本是 21
.
使用 wget
命令下载压缩包,我选择 GraalVM for JDK 21 Community 21.0.2
的压缩包下载:
1 |
|
如果下载速度过慢可以考虑使用镜像站下载。
2. 解压 GraalVM
下载完成后,解压你下载的 GraalVM:
1 |
|
将解压出的文件夹重命名为 java-21-graalvm
:
1 |
|
将 java-21-graalvm
移至 /usr/lib/jvm
目录:
1 |
|
3. 配置环境变量
编辑 /etc/profile
文件,添加 GraalVM 的环境变量。
1 |
|
在文件末尾添加如下内容,将 GRAALVM_HOME
和 JAVA_HOME
设置为你的 GraalVM 安装路径:
1 |
|
使配置生效:
1 |
|
4. 查看 GraalVM 版本
查看 GraalVM 的 OpenJDK
和 native-image
版本。
1 |
|
输出如下:
1 |
|
5. 使用 GraalVM 编译 Java 程序
5.1 编译 Java 程序
新建一个 Java 文件 HelloWorld.java
,内容如下:
1 |
|
首先使用 javac
编译 Hello.java
,生成 HelloWorld.class
文件:
1 |
|
然后使用 native-image
将 HelloWorld.class
文件编译成本地二进制文件:
1 |
|
执行编译后的二进制文件:
1 |
|
输出 Hello, GraalVM!
则表示 GraalVM 安装成功。
5.2 编译 SpringBoot 项目
同样的,你也可以对 SpringBoot 项目进行编译,提高启动速度和运行效率。
首先将 SpringBoot 项目打包成 jar
文件
- idea 可以点击左侧
clean
–>package
直接打包, - 或者使用
maven
命令打包:1
mvn clean package
然后使用 native-image
将 jar
文件编译成本地二进制文件:
1 |
|
执行编译后的二进制文件:
1 |
|
参考文章: