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

Upgrade Gaffer to build with Java 8 and Java 11 #2300

Closed
t11947 opened this issue Aug 5, 2020 · 5 comments · Fixed by #2624
Closed

Upgrade Gaffer to build with Java 8 and Java 11 #2300

t11947 opened this issue Aug 5, 2020 · 5 comments · Fixed by #2624
Labels
dependencies Updates/changes to Maven or other dependencies enhancement Improvement to existing functionality/feature

Comments

@t11947
Copy link
Contributor

t11947 commented Aug 5, 2020

Radical descoping of original issue:

The scope of this change is to make Gaffer able to be built as a Java 11 project as well as the current Java 8.

Actually adopting Java 11 is on hold for now, so we will not be leveraging any of the new features in post-Java 8 versions such as better integration with container technologies, the JShell and new language features.

@t11947
Copy link
Contributor Author

t11947 commented Aug 20, 2020

Edited description to remove modularisation from the scope of this ticket. This will be added as an issue once the upgrade has happened.

@n3101 n3101 added this to the v2.0.0 milestone May 12, 2021
@n3101 n3101 added alpha-dependencies dependencies Updates/changes to Maven or other dependencies and removed alpha-dependencies enhancement Improvement to existing functionality/feature labels Nov 17, 2021
@n3101 n3101 modified the milestones: v2.0.0, v2.0.0-alpha-0.2 Jan 19, 2022
@GCHQDeveloper314
Copy link
Member

The work required for the Java 11 upgrade has been drafted in the v2-java-11 branch. This passes tests, although further work is required to migrate some of the integration test improvements from the old develop-v2 branch.
The draft branch contains only the minimum required to move to Java 11 and update dependencies, no changes to use Java 11 features are included.

@n3101 n3101 removed the p:high label Feb 2, 2022
@n3101
Copy link

n3101 commented Mar 15, 2022

@GCHQDeveloper314

further work is required to migrate some of the integration test improvements from the old develop-v2 branch.

If that work does not belong in this issue, then please will you open a new issue to cover it? I don't want those code changes to get lost

@GCHQDeveloper314
Copy link
Member

The migration of the improved integration tests is specific to this ticket as that work is only required for the Java upgrade. It's not required for any other purpose - the tests are fine for Java 8 but do not compile under Java 11.

@n3101 n3101 changed the title Upgrade to Java 11 Upgrade Gaffer to build with either Java 8 or Java 11 Apr 6, 2022
@t92549 t92549 changed the title Upgrade Gaffer to build with either Java 8 or Java 11 Upgrade Gaffer to build with Java 8 and Java 11 Apr 6, 2022
t92549 pushed a commit that referenced this issue Apr 8, 2022
* Allow for upgrading Accumulo to latest 1.x version
Required a change to remove use of Accumulo Base64 class. See this accumulo commit for removal: apache/accumulo@bcc8379#diff-c3f45f5bc091b19c94783c4ca893678cd5c9ccf607b470dfd9398e3fd96ab164 This for the changes required: apache/accumulo@bcc8379#diff-c64c9d73232d8e218d29a912a080ee8f691d88c94b2005058b86962d9ef0eec9

* Fix Javadoc to work with HTML5, as required by Java 11
Also remove incorrect <p> elements causing warnings

* Add javax.annotation dependency for Java 11

* Add manual cast to fix strict Java 11 type checking

* Remove redundent ArrayList usage
This fixes a type casting problem in Java 11

* Remove use of internal API, add missing tests
Internal API should not be used and is not available in Java 11.
Added two tests to cover arrays and generic arrays; this ensures coverage of the modified code paths.

* Add a profile for use with Java 11
Uses the newest Hadoop, only 3.3.0 and above can be used with Java 11

* Fix lamda which is ambiguous with Java 11

* Add JAXB dependency - required for Java 11

* Move Spark version properties to parent POM
Also include Java 11 compatible versions in the Java 11 profile

* Add property for javax.xml.bind dependency version
also relocate version properties which were above the section
@t92549 t92549 linked a pull request Apr 8, 2022 that will close this issue
@t92549
Copy link
Contributor

t92549 commented Apr 8, 2022

Closed by #2624

@t92549 t92549 closed this as completed Apr 8, 2022
@t92549 t92549 added enhancement Improvement to existing functionality/feature and removed migration-required labels Apr 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Updates/changes to Maven or other dependencies enhancement Improvement to existing functionality/feature
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants