dockerkubernetesbuildpack

Cloud Native Buildpacks for JDK 21


pack builder suggest reutrns

Google: gcr.io/buildpacks/builder:v1
Heroku: heroku/builder:20
Heroku: heroku/builder:22
Paketo Buildpacks: paketobuildpacks/builder-jammy-base
Paketo Buildpacks: paketobuildpacks/builder-jammy-buildpackless-static
Paketo Buildpacks: paketobuildpacks/builder-jammy-full
Paketo Buildpacks: paketobuildpacks/builder-jammy-tiny

I tried the 2 heroku builders, the google builder and jammy-base builder and the error message i got was

  [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.11.0:compile (default-compile) on project hubjet: Fatal error compiling: error: release version 21 not supported -> [Help 1]
  [ERROR]
  [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
  [ERROR] Re-run Maven using the -X switch to enable full debug logging.
  [ERROR]
  [ERROR] For more information about the errors and possible solutions, please read the following articles:
  [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

So I am assuming JDK 21 is not supported and they are expecting JDK 17.

What command do I run to set the JDK version of the buildpack for 21? I tried with

pack build test-img --builder paketobuildpacks/builder-jammy-buildpackless-static --buildpack paketo-buildpacks/java

but it didnt work. Where can I even browse all available paketobuildpacks for the JDK ? For an example what are the names of all avaialbe buildpacks for --buildpack command


Solution

  • inspect should show you the available buildpacks, but at least in my case is not sowing any.

    pack inspect paketobuildpacks/builder-jammy-base
    ...
    Buildpacks:
      (buildpack metadata not present)
    ...
    

    You can find the available buildpacks here.

    For paketo-buildpacks/java the one that provides the JDK version is paketo-buildpacks/bellsoft-liberica.

    There you can see that $BP_JVM_VERSION is available for you to set.

    pack build test-img --builder paketobuildpacks/builder-jammy-base --env BP_JVM_VERSION=21