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

Update target platform to 2024-09 #248

Merged
merged 1 commit into from
Nov 27, 2024

Conversation

frankbenoit
Copy link
Contributor

javax to jakarta, jetty 10.x to 12.0.12

What it does

Update to Eclipse target platform 2024-09.

How to test

The target platform state show no errors.
My test application did startup without exceptions and worked.

Follow-ups

I updated many versions, probably the ranges should be wider. Or support for older versions is dropped?

Changelog

  • This PR should be mentioned in the changelog
  • This PR introduces a breaking change (if yes, provide more details below for the changelog and the migration guide)
    Incompatibility to older versions / target platforms

@frankbenoit frankbenoit force-pushed the TP-2024-09 branch 8 times, most recently from fe1d130 to 15640a1 Compare November 8, 2024 22:50
javax to jakarta, jetty 10.x to 12.0.12
@tortmayr
Copy link
Contributor

Hi @frankbenoit,
thank you for your PR. Unfortunately I run into errors when trying to test this.
As you mentioned the targetplatform resolves without any errors but starting the application (in websocket mode) does not work.
On startup I receive the following error

Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/jetty/http/MimeTypes$Mutable
	at org.eclipse.jetty.server.Server.<init>(Server.java:85)
	at org.eclipse.jetty.server.Server.<init>(Server.java:140)
	at org.eclipse.jetty.server.Server.<init>(Server.java:131)
	at org.eclipse.glsp.server.websocket.WebsocketServerLauncher.start(WebsocketServerLauncher.java:63)
	at org.eclipse.glsp.server.launch.GLSPServerLauncher.start(GLSPServerLauncher.java:65)
	at org.eclipse.glsp.example.workflow.launch.WorkflowServerLauncher.main(WorkflowServerLauncher.java:47)
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.http.MimeTypes$Mutable
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
	... 6 more

I can solve this by explicitly adding org.eclipse.jetty.http as a dependency to the websocket package.
However, then I run into the following error:

Exception in thread "main" java.lang.IncompatibleClassChangeError: class org.eclipse.jetty.io.ArrayRetainableByteBufferPool$RetainedBucket has interface org.eclipse.jetty.util.Pool as super class
	at java.base/java.lang.ClassLoader.defineClass1(Native Method)
	at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1012)
	at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)
	at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:862)
	at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
	at org.eclipse.jetty.io.ArrayRetainableByteBufferPool.<init>(ArrayRetainableByteBufferPool.java:156)
	at org.eclipse.jetty.io.ArrayRetainableByteBufferPool.<init>(ArrayRetainableByteBufferPool.java:103)
	at org.eclipse.jetty.io.ArrayByteBufferPool$Retained.<init>(ArrayByteBufferPool.java:321)
	at org.eclipse.jetty.io.ArrayByteBufferPool.newRetainableByteBufferPool(ArrayByteBufferPool.java:142)
	at org.eclipse.jetty.io.AbstractByteBufferPool.<init>(AbstractByteBufferPool.java:68)
	at org.eclipse.jetty.io.ArrayByteBufferPool.<init>(ArrayByteBufferPool.java:117)
	at org.eclipse.jetty.io.ArrayByteBufferPool.<init>(ArrayByteBufferPool.java:100)
	at org.eclipse.jetty.io.ArrayByteBufferPool.<init>(ArrayByteBufferPool.java:71)
	at org.eclipse.jetty.io.ArrayByteBufferPool.<init>(ArrayByteBufferPool.java:58)
	at org.eclipse.jetty.server.Server.<init>(Server.java:150)
	at org.eclipse.jetty.server.Server.<init>(Server.java:140)
	at org.eclipse.jetty.server.Server.<init>(Server.java:131)
	at org.eclipse.glsp.server.websocket.WebsocketServerLauncher.start(WebsocketServerLauncher.java:63)
	at org.eclipse.glsp.server.launch.GLSPServerLauncher.start(GLSPServerLauncher.java:65)
	at org.eclipse.glsp.example.workflow.launch.WorkflowServerLauncher.main(WorkflowServerLauncher.java:47)

Any ideas what could be the issue here?
( Java Version: 21 (termurin)
Eclipse: 24-09)

@tortmayr
Copy link
Contributor

@frankbenoit Thanks again for providing this PR. I'm going to merge it into a separate branch so that I can push changes on top.
(minor refactorings in target platform, version adjustments and fixing the plain maven build)

@tortmayr tortmayr changed the base branch from master to tp-2024-09 November 27, 2024 23:32
@tortmayr tortmayr merged commit 604fa15 into eclipse-glsp:tp-2024-09 Nov 27, 2024
2 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants