-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support Multi Release Jars #209
Conversation
Thinking out loud: Currently the Clazz has 1 or more ClazzpathUnits.
If the java 17 variant of a class references an other class, then it may be true that the java 11 variant does not make that reference, simply because that dependency does not run on java 11. Tricky part:
Right now this feels like a complete overhaul of the data structures is needed. @tcurdt I could use some input from you. |
Thanks for the PR and you looking into this. You raise a point I was concerned about when reading it. Right now a Classpath Unit (or jar) can hold exactly one version of the class. (But may appear in different units) I am thinking the key might no longer be just the class name but rather a query. A simplistic approach could be to say the tuple <class name, java version> could be replace the current key . <some.package.classname, 8> We cannot easily lookup classes for <some.package.classname, 12+> like that. I have never been exposed to this yet (as I am not doing that much java anymore). Reading
I am wondering what real life use cases are without bootloader support. |
0e49770
to
3572d22
Compare
@tcurdt Please check what you think of this. I'm going to try this in combination with maven-shade first, to see if I missed anything. P.S. I have included the sources of the two test jar files. Both are perfectly reproducible. So if you run |
I guess adding the tuple <classpath unit, filename> instead of just the filename would make it correct and still easy enough to add. WDYT? |
c2e63fd
to
70fc013
Compare
@tcurdt I would like your feedback on this. At this point this works with my changes in apache/maven-shade-plugin#202 |
I will try to have a closer look tomorrow. Thanks for all the work! |
Very nice. Thanks for the work! |
...test/resources-src/multi-jdk/src/main/java/nl/basjes/maven/multijdk/AbstractJavaVersion.java
Outdated
Show resolved
Hide resolved
I'll give it another look the next days and looking forward to merge this. Thank you! |
Thanks for the great contribution! |
We still have a problem though: https://ci.appveyor.com/project/tcurdt/jdependency/builds/48559371 It's not passing tests on windows:
|
Not finished yet.