-
Notifications
You must be signed in to change notification settings - Fork 54
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
Working support for Jakarta version of XJC #129
Conversation
I had to skip tests in order to build this. The tests explicitly use some com.sun references and I am not sure how to address those. But I have verified that the resulting artifacts work in my build (through one of my Gradle plugins) |
<groupId>com.sun.activation</groupId> | ||
<artifactId>javax.activation</artifactId> | ||
<groupId>jakarta.activation</groupId> | ||
<artifactId>jakarta.activation-api</artifactId> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for activation v 2.0.x, I'd avoid changing this to an API artifact as it can do more harm than good - com.sun.activation
may conflict with jakarta.activation
on JPMS. This change is fine with activation-api 2.1.0 (currently RC1); an implementation is ie angus-activation, currently at 1.0.0-M1.
For now, my recommendation is to use com.sun.activation:jakarta.activation:2.0.1
if one needs stable version
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It worked with your suggestion. But at least for my build, it worked with what I had also.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sure, in "classpath-only" cases it works Try to put the JAXB RI and its dependencies + jakarta.activation-api on the module path. Or simply just the API and Impl (API jar contains references to classes which are not available in the API jar itself, so whoever tries to use it, may get NoClassDefFoundError at some point, and both jars contain same API packages - split package problem) - in general not a big deal for jaxb as such; it's bigger problem for projects built on top of it or using it.
<version>${activation.version}</version> | ||
<groupId>jakarta.activation</groupId> | ||
<artifactId>jakarta.activation-api</artifactId> | ||
<version>2.0.1</version> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now 2.1.0
already exists.
Sorry to jump in here as I am not a contributor :/ I am trying to use @sebersole 's fork as a temporary solution to the jakarta problem with the equals/hashcode/toString plugins. It also seems to be working for me - thanks a million for that! :) I did notice a few things which might be added under "cleanup" :)
I managed to fix this unit test by updating the JAXB namespace and version in both the binding.xjb and schema.xsd files:
|
This has been done in jaxb-tools v3 and above |
V3 or v4? According to https://github.com/highsource/jaxb-tools
|
So both v3 and v4 are concerned Maybe information is clearer on migration guide |
Working support for Jakarta XJC