0

拥有一个 Spring Boot 应用程序,我尝试使用Paketo Buildpack

pack build my-app
    --builder paketobuildpacks/builder:base
    --env BP_JVM_VERSION=8

但它没有随 JDK 一起提供,只有 JRE 可用。

它来了一个错误

compiler is null maybe you are on JRE enviroment please change to JDK environment

如何将 jdk 添加到我的应用映像中?

4

1 回答 1

0

Paketo Java 构建包经过深思熟虑,决定只将 JRE 安装到运行时容器映像中。我们在构建您的应用程序时安装 JDK,但在应用程序运行时只有 JRE 可用。这是出于安全考虑,因为 JDK 提供了更大的表面积以及攻击者重新编译代码更改所需的工具。

但是,有几个已知的应用程序需要 JDK 的情况,因此这已作为构建包的功能请求浮出水面。大部分工作已经完成,因此我们应该尽快合并此功能。观看此问题以获取更新。

同时,您可以使用说明选择备用 JVM 提供程序,并选择不附带 JVM 的 JVM 提供程序。我想不到的是 Amazon Corretto 和 Microsoft OpenJDK。

当您 时pack build,您将看到一条消息,指出已安装 JDK,因为 JRE 不可用。然后,您的运行时容器中应该有一个可用的 JDK。

于 2021-08-18T20:20:52.990 回答