4.x: Custom main class support for Helidon Inject with full ApplicationBinding #9840
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolves #9848
Added a new annotation to generate application binding from annotation processor, to fully support custom main classes.
Currently the
ApplicationBinding
class gets generated by a Maven plugin, so it can only be used from classes generated there as well (i.e. the generatedApplicationMain
).If we want to use full generated binding from a custom Main class, a placeholder (that does the right thing) must be generated during annotation processing, so it can be "forward-referenced" from the main class.
Added a custom main to inject tests with the annotation, as that validates that it compiles (it did not compile before this change).
This is a good to have for 4.2.0