Skip to content

All versions since 1.3.0

1.3.0

Added

  • This release primarily contains features for better interoperability with Jlink and Jpackage.
    • The plugin registers a task that can create JMOD archives containing compiled classes and resources, C headers, and native binaries. The JMOD is exposed as a secondary variant, so it can be consumed by other projects.
    • Added better support for testing and running projects where binaries are loaded from the library search path. This can also be useful for linking the artifact into a custom runtime image or native application.

Improvements

  • The occurrence order of this plugin and Java plugins in the build script doesn’t matter under any circumstances. A Java plugin could even be omitted in the build script.
  • Removed an occurrence of eager configuration.
  • Consolidated the plugin’s implementation.
  • Added missing Javadoc comments
  • Updated example project to reflect the plugin features

1.4.0 Latest

Added

  • A local Jextract installation can be configured with the Gradle property org.openjdk.jextract.installation-path instead of the build script DSL. This is the cleaner solution and recommended in the future.
  • Native header and binary files for a Jextract library can be consumed from dependencies, e.g., another project that uses Gradle Native.

changed

  • The distributions file should be configured with the jextract.installation.distributions property.
  • The plugin uses conventions to configure properties instead of setting them. So plugin conventions and user settings won’t be joined anymore.
    • The name of a configured library is either used as library name to be loaded per convention, or the list of library names can be completely set by the user in the build script.

Deprecated

  • The jextract.installation.location property shouldn’t be used anymore and will be removed in the next major release. Local Jextract installation should be configured via user-specific Gradle property.
  • The jextract.distributions property will be moved to jextract.installation.distributions.