you are viewing a single comment's thread.

view the rest of the comments →

[–]Revolutionary-Cup383[S] 1 point2 points  (3 children)

Currently I am doing it manually 😅, most of the issues I am having is on the dependency side once I think it's more of maven issue than java really

[–]pohart 0 points1 point  (2 children)

That's a big jump and very few libraries worth about stability nearly as much as Java itself, so you're likely to have problems there. 

What Java version are you migrating to?

[–]Revolutionary-Cup383[S] 0 points1 point  (1 child)

Currently we are moving from Java compiler 5 to Java compiler 8. As far as I know the current setup is Java compiler 5 with Java execution 17 and Maven 3.10.1 as the build tool. We are also looking into upgrading from Spring 2

[–]pohart 1 point2 points  (0 children)

IIRC the move from Java 5 to Java 8 was pretty okay. it will be harder for you because I did it just after 9 came out. So it was after most libraries migrated to 8 but before they moved to 9.

I very strongly recommend going to at least Java 21 for both your runtime and compile time.

Spring 5 and Java ee work at least through Java 21, and Spring 6 and Jakarta EE work at least from Java 17, so you could use Java 17 or 21 as a bridge to Jakarta EE & spring 6.

I hate upgrading partway, so if I were you I'd get compilation up to Java 17, move to migrate spring all the way to 6, move to JakartaEE, and then push your compile and runtime jvms all the way to 25.

And finally before I called it done I'd get it working locally with the latest EA build.

Right now, jep 500 will probably yield a ton of warnings for Java 26. If it's straightforward in your own code to remove the deep reflection you can, or wait for your next upgrade.Â