Draft
Conversation
Contributor
Author
|
This prototype is working with Apache Camel where we can now compile multiple files in the same unit, which means they can have dependency between them, such as creating or injecting new instances: foo -> bar <- baz |
Contributor
Author
|
Today I made a prototype of this PR as a local copy in Apache Camel to try and test it for Camel. This is working, and I can even have it hot-reload if I modify the .java source code and have jOOR able to re-compile and from Camel point of view then use the updated classes. |
Member
|
Thanks, @davsclaus. I'll check it out next week. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Here is a first cut prototype for compiling multiple files in one go, which allows these classes to be dependent on each other.
The code can surely be polished, and I was only focusing on making the Compile to work for multiple files, and not as much on a nice end user API.
I tried to avoid changing in existing files. I only added a
compileUnitmethod toReflectwhich gives access to do the multiple compiler.We can likely find another API to avoid any changes to existing, if desired.
We need this for Apache Camel so I would like to help more if @lukaseder would consider accepting this function in his excellent library. (cc @lburgazzoli)