BellSoft发布了新版本的LibericaNativeImageKit(NIK)22.0.0.2,在本文中,我们将讨论如何在Quarkus框架中使用NativeImageKit。LibericaNIK基于开源项目GraalVM(社区版),兼容多种平台,包括基于轻量级musl的AlpineLinux。LibericaNIK本质上是一种将基于JVM的应用程序转换为本机可执行文件(AOT编译)的实用程序。最新版本的LibericaNIK22.0.0.2包括多项增强功能:在适用于macOS的LibericaNIK中添加了对OpenJFX的支持(已经支持Windows和Linux)本机图像默认包含在所有NIK版本中。安装不再需要运行GUI。为什么要使用原生图像?本机图像技术优化资源消耗,最大限度地减少静态足迹,并提供近乎实时的启动。LibericaNIK旨在支持大量平台和编程语言,因此该套件支持多语言程序。使用LibericaNIK降低成本并加速部署。如何在Quarkus框架中使用LibericaNIK?Quarkus是一个云原生开源技术堆栈。传统的Java堆栈是为单体应用程序设计的,而Quarkus是一种新的框架,旨在减少云和容器主导行业的大内存需求。它是为原生镜像量身定制的Kubernetes原生Java框架,非常适合在云中部署和无服务器开发。Quarkus支持JakartaEE/MicroProfile实施的几种流行标准。通过将LibericaNIK与Quarkus框架结合使用,可以进一步提高其效率。构建原生镜像因此,让我们以HelloWorld应用程序为例,使用Quarkus和LibericaNIK构建原生镜像。首先,您需要准备工具和软件。设置C编译器工具链。在Linux上,需要GCC以及glibc和zlib标头。#dnf(基于rpm)sudodnfinstallgccglibc-develzlib-devellibstdc++-static#基于Debian的发行版:sudoaptinstallbuild-essentiallibz-devzlib1g-dev在Windows上,安装VisualStudio2017VisualC++构建工具。对于MacOS,依赖项由XCode提供:xcode-select--install。为了演示如何将LibericaNIK集成到Quarkus中,我们将使用最基本的Quarkus“HelloWorld”应用程序。继续并按照官方文档创建一个简单的Quarkus应用程序。现在您已经准备好HelloWorld应用程序,让我们配置NativeImageKit。首先下载合适版本的LibericaNIK(包中已经包含了LibericaVM和本地映像工具)。下载完成后,通过在命令行验证校验和来检查文件(校验和应与下载页面上链接旁边的校验和匹配)。配置构建环境。对于Linux和macOS,如果您有TGZ/ZIP存档,请将JAVA_HOME环境变量设置为NIK安装目录:exportJAVA_HOME=$HOME/Development/bellsoft-liberica-vm-openjdk11-22.0.0.2如果使用包(deb,pkg/dmg)进行安装,macOS的安装路径为常规路径。在Windows上,通过控制面板设置环境变量。请注意,从21.3.1开始的所有LibericaNIK版本默认都包含本机镜像,允许您跳过gu安装步骤。我们不在这里描述这一步。如果您按照说明构建Quarkus应用程序,您将在pom.xml中找到以下配置文件:
