Skip to content

Support -incremental builds using Native Image Layers feature #778

Description

@cstancu

The Native Image Layers feature allows packaging an application and its dependencies in separate binaries. The base layer contains common used modules such as java.base and can be configured to also include application framework code such as the Netty framework. The application code usually goes in the application layer. When changing application classes, assuming that dependencies haven't changed, only the application layer needs to be rebuilt and it is not necessary to rebuild the base layer. The incremental build of the application can speed-up development.

Currently this incremental build is done manually: the user needs to execute just the application build when they know that the dependencies have not changed. It also requires a custom layered build configuration to specify what should be considered as being part of the base layer.

The feature request is to add an -incremental flag that would automate this behavior. The NBT should determine what goes in the base layer by analyzing the 3rd party dependencies, then it should automatically build a base layer in the background, and only build an application layer on subsequent build requests.

This builds on top of #719 which created a Gradle DSL to support layered images creation.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions