SpringBoot3 Graalvm Native-Image尝鲜

本文介绍了如何在Windows环境下,使用GraalVM 22.3.1和SpringBoot 3.0.2进行native-image构建。详细阐述了从JDK8+SpringBoot2.x到JDK17+SpringBoot3.x的迁移过程,以及GraalVM的安装、配置,包括设置环境变量、安装native-image工具。文章还涉及到Visual Studio Build Tools 2022的安装与验证,以及解决native-maven-plugin插件在Windows上的路径问题。
摘要由CSDN通过智能技术生成

简介:GraalVM 是一个跨语言的通用虚拟机,不仅支持了 Java、Scala、Groovy、Kotlin 等基于 JVM 的语言,以及 C、C++ 等基于 LLVM 的语言,还支持其它像 JavaScript、Ruby、Rust、Python 和 R 语言等。它消除了编程语言之间的隔离。

GraalVM EE <==== 内置 Oarcle JDK 版本

Oracle GraalVM 企业版是Oralce Java SE 订阅的一部分,无需额外付费,但众多周知除了JDK8u202及以下版本和JDK17版本不收费,Oracle JDK的其他版本是收费的。

GraalVM CE <==== 内置 Open JDK 版本

社区版,免费

Spring支持Graalvm native-image 功能最低要求 springboot3.x ,而支持Springboot3.x功能的最低要求jdk17+ ,所以Graalvm native-image实践的难点在于 JDK8 + springboot2.x + JavaEE 向 JDK17 + springboot3.x + Jakarta EE的项目迁移。

1、参考文档

Springboot3.0.2参考文档

https://docs.spring.io/spring-boot/docs/3.0.2/reference/pdf/spring-boot-reference.pdf

https://docs.spring.io/spring-native/docs/current/reference/htmlsingle/

Springboot3.x环境要求

https://docs.spring.io/spring-boot/docs/current/reference/html/getting-started.html#getting-started.system-requirements

Graalvm22.x native-image参考文档

https://www.graalvm.org/latest/reference-manual/native-image/

Quarkus 集成native-image参考文档(仅供参考)

https://quarkus.io/guides/building-native-image#producing-a-native-executable

Graalvm最新版官网下载地址

https://github.com/graalvm/graalvm-ce-builds/releases/tag/vm-22.3.1

微软VS工具官网下载地址

https://learn.microsoft.com/zh-cn/visualstudio/releases/2022/release-history

https://learn.microsoft.com/zh-cn/visualstudio/releases/2019/history#installing-an-earlier-release

Maven历史版本下载地址

https://archive.apache.org/dist/maven/maven-3/

IDEA 历史版本下载地址

https://www.jetbrains.com/idea/download/other.html

根据以上官方文档的参考,我们选择以下环境

Win10 21H2

Graalvm Community 22.3.1(集成JDK17.06)

Maven3.8.1

IDEA Community 2022.2.4

(兼容JDK8的最后一个版本,且支持JDK17和Springboot3,默认Maven3.8.1)

VSBuildTools Community 2022

(官网要求VisualStudio2017 和 VsBuildTools2017以上版本,个人实践发现只用VSBuildTools工具也能满足需求)

2、环境搭建介质准备

graalvm-ce-java17-windows-amd64-22.3.1.zip

native-image-installable-svm-java17-windows-amd64-22.3.1.jar

vs_BuildTools.exe

apache-maven-3.8.6.zip

ideaIC-2022.2.4.exe

3、Graalvm和Maven安装

gr

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值