Skip to content
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

Switch from com.sun.xml.bind to jakarta.xml.bind #528

Open
stefanspiska opened this issue Jul 20, 2023 · 5 comments
Open

Switch from com.sun.xml.bind to jakarta.xml.bind #528

stefanspiska opened this issue Jul 20, 2023 · 5 comments

Comments

@stefanspiska
Copy link

Archie still uses com.sun.xml.bind Annotation instead of jakarta.xml.bind ones.

I would suggest to change since there will no new versions of com.sun.xml.bind and it is a bit messy if you use archie in a project which also include jakarta.xml.bind (see https://stackoverflow.com/a/72151763)

The migration should be just change the dependency and replace the import for the annotations from javax . to jakarta.

jakarta 3 would also still be java 8 compatible

https://eclipse-ee4j.github.io/jaxb-ri/3.0.0/docs/ch02.html#section-2232462900667844

@stefanspiska
Copy link
Author

If you agree to this changes we could provide you with a PR.

@pieterbos
Copy link
Collaborator

This is indeed something we will have to do

However, we have other projects still dependent on the javax version. We have started the progress of migrating those. So we may need to use the gradle that auto-transforms the source and builds two releases for a while, until everyone that depends on Archie can migrate as well

@pieterbos
Copy link
Collaborator

If you could provide the source code, that would still be useful. Plugins exist that can create both version or even run artifact transforms to handle the dependencies. But if you already have a working version, at least part of the build script and changes can be reused.

@pieterbos
Copy link
Collaborator

Oh, never mind about the code. This was really easy to do. Results at #529

However, the above discussion still needs to be had internally for us, and potentially a bigger migration project for some bigger projects that have more complicated dependencies than Archie.

Or perhaps we could just use tools such as https://github.com/nebula-plugins/gradle-jakartaee-migration-plugin for a while. These transform the dependencies so that the chosen version is automatically used. If you apply that to ehrbase and include the current Archie release, the Archie jar files will be automatically converted to the jakarta.* packages when building.

Our own requirement for java 8 might not apply anymore quite soon, we may be able to drop support for that in Archie as well.

@cyrillzadra
Copy link

Are there already any plans to have a release with jakarta dependencies?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants