赞
踩
GraalVM是开发人员编写和执行Java代码的工具。具体来说,GraalVM是由Oracle创建的Java虚拟机(JVM)和Java开发工具包(JDK)。它是一个高性能的运行时,可以提高应用程序的性能和效率。
GraalVM的目标包括:编写一个更快、更易于维护的编译器,提高在JVM上运行的语言的性能,减少应用程序启动时间,将多语言支持集成到Java生态系统中,以及为此提供一组编程工具。
GraalVM向JDK添加了一个优化编译器,它为各种语言提供性能优化,并为多语言应用程序提供互操作性。除了支持Java代码,GraalVM还支持其他编程语言,包括Scala、Kotlin、Groovy、Clojure、R、Python、JavaScript和Ruby。从本质上讲,GraalVM允许开发人员在单个应用程序中以多种语言和库高效地运行代码。
一,准备工作:
1. 安装 GraalVM
下载地址:https://github.com/graalvm/graalvm-ce-builds/releases/tag/vm-22.3.0
解压到本地
2.配置 GRAALVM_HOME 环境变量
3, Path 配置
4.验证安装结果:
表示环境配置完成;
二. 安装 native image,用于构建
1. 由于网络问题,需要手动下载对应版本的
2.本地cmd,执行命令
gu install -L native-image-installable-svm-java11-windows-amd64-22.0.0.2.jar
3.验证;可以使用命令查看,已经安装的功能
gu list
安装成功;
三,搭建 spring boot 3的项目
IDEA 使用的版本 2022.3
注意选择刚安装的 graalvm sdk;
2. 配置项目 pom 文件
- <?xml version="1.0" encoding="UTF-8"?>
- <project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-parent</artifactId>
- <version>3.0.0</version>
- </parent>
-
- <groupId>你的组织名</groupId>
- <artifactId>你的项目名</artifactId>
- <version>1.0-SNAPSHOT</version>
- <packaging>pom</packaging>
-
-
- <properties>
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-web</artifactId>
- </dependency>
- <dependency>
- <groupId>org.projectlombok</groupId>
- <artifactId>lombok</artifactId>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-test</artifactId>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.graalvm.buildtools</groupId>
- <artifactId>native-maven-plugin</artifactId>
- <extensions>true</extensions>
- <executions>
- <execution>
- <id>build-native</id>
- <goals>
- <goal>compile-no-fork</goal>
- </goals>
- <phase>package</phase>
- </execution>
- <execution>
- <id>test-native</id>
- <goals>
- <goal>test</goal>
- </goals>
- <phase>test</phase>
- </execution>
- </executions>
- <configuration>
- <!--此处是入口类,必须与实际代码一致,否则无法打包成功-->
- <mainClass>com.fate.boot3.Boot3Application</mainClass>
- <!-- 生成的exe文件名-->
- <imageName>boot-test</imageName>
- <buildArgs>
- <buildArg>--verbose</buildArg>
- </buildArgs>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-maven-plugin</artifactId>
- <configuration>
- <excludes>
- <exclude>
- <groupId>org.projectlombok</groupId>
- <artifactId>lombok</artifactId>
- </exclude>
- </excludes>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- </project>
3.其他的先不要配置,和springboot 2一样的写法,写个简单的测试方法;
4. 启动
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。