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

IncompatibleClassChangeError when connecting to the Java agent #488

Open
MCUmbrella opened this issue Feb 12, 2025 · 0 comments
Open

IncompatibleClassChangeError when connecting to the Java agent #488

MCUmbrella opened this issue Feb 12, 2025 · 0 comments
Labels
bug Something isn't working

Comments

@MCUmbrella
Copy link

Description

Connecting to the agent causes IncompatibleClassChangeError.

Reproduction Steps

  1. Download the server and Java agent
  2. Run the server, attach Spark at startup
  3. Connect to the agent
  4. See the error

Expected Behaviour

Connected successfully

Platform Information

  • Minecraft Version: Minecraft 1.16.5
  • Platform Type: Server
  • Platform Brand: Mohist (implementing Paper 1.16.5-R0.1-SNAPSHOT, Forge 36.2.42)
  • Platform Version: Build 1238

Spark Version

v1.10.124

Logs and Configs

Server launch command:

java -javaagent:spark-1.10.124-standalone-agent.jar=port=2025 -jar mohist-1.16.5-1238-server.jar

Server output:

[spark] Loading standalone agent... (premain)
SLF4J: Class path contains multiple SLF4J providers.
SLF4J: Found provider [org.apache.logging.slf4j.SLF4JServiceProvider@243c4f91]
SLF4J: Found provider [org.slf4j.simple.SimpleServiceProvider@291ae]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual provider is of type [org.apache.logging.slf4j.SLF4JServiceProvider@243c4f91]
[09:59:53 INFO]: No detected/configured IoServiceFactoryFactory; using Nio2ServiceFactoryFactory
[⚡] SSH Server started on port 2025
[⚡] Connect using: ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -p 2025 spark@localhost
[⚡] When prompted, enter the password: BTUt0P65bOlwRubJdOmZKlVs5oF3fgQH
[10:00:00 INFO]: ModLauncher running: args [--gameDir, ., --launchTarget, fmlserver, --fml.mohistVersion, 1238, --fml.forgeVersion, 36.2.42, --fml.mcpVersion, 20210115.111550, --fml.mcVersion, 1.16.5, --fml.forgeGroup, com.mohistmc]
[10:00:00 INFO]: ModLauncher mohist-8.1.3 starting: java version 11.0.15 by Private Build
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by cpw.mods.modlauncher.SecureJarHandler (file:/home/mcumbrella/minimine8/libraries/cpw/mods/modlauncher/mohist-8.1.3/modlauncher-mohist-8.1.3.jar) to field java.util.jar.Manifest.jv
WARNING: Please consider reporting this to the maintainers of cpw.mods.modlauncher.SecureJarHandler
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release

...

[10:00:20 INFO]: Session spark@/127.0.0.1:38546 authenticated
[10:00:21 WARN]: handleShell(ChannelSession[id=0, recipient=0]-ServerSessionImpl[spark@/127.0.0.1:38546]) Failed (IncompatibleClassChangeError) to create shell: Class org.jline.builtins.ssh.ShellFactoryImpl does not implement the requested interface org.apache.sshd.server.shell.ShellFactory
java.lang.IncompatibleClassChangeError: Class org.jline.builtins.ssh.ShellFactoryImpl does not implement the requested interface org.apache.sshd.server.shell.ShellFactory
        at org.apache.sshd.server.channel.ChannelSession.handleShellParsed(ChannelSession.java:557) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.server.channel.ChannelSession.handleShell(ChannelSession.java:542) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.server.channel.ChannelSession.handleInternalRequest(ChannelSession.java:310) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.channel.AbstractChannel.handleUnknownChannelRequest(AbstractChannel.java:338) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.channel.AbstractChannel.handleChannelRequest(AbstractChannel.java:325) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.channel.AbstractChannel.handleRequest(AbstractChannel.java:290) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.session.helpers.AbstractConnectionService.channelRequest(AbstractConnectionService.java:660) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.session.helpers.AbstractConnectionService.process(AbstractConnectionService.java:463) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.session.helpers.CurrentService.process(CurrentService.java:109) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.session.helpers.AbstractSession.doHandleMessage(AbstractSession.java:625) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.session.helpers.AbstractSession.lambda$handleMessage$0(AbstractSession.java:546) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.util.threads.ThreadUtils.runAsInternal(ThreadUtils.java:68) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.session.helpers.AbstractSession.handleMessage(AbstractSession.java:545) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.session.helpers.AbstractSession.decode(AbstractSession.java:1729) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.session.helpers.AbstractSession.messageReceived(AbstractSession.java:506) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.session.helpers.AbstractSessionIoHandler.messageReceived(AbstractSessionIoHandler.java:64) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.io.nio2.Nio2Session.handleReadCycleCompletion(Nio2Session.java:409) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.io.nio2.Nio2Session$1.onCompleted(Nio2Session.java:382) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.io.nio2.Nio2Session$1.onCompleted(Nio2Session.java:377) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.io.nio2.Nio2CompletionHandler.lambda$completed$0(Nio2CompletionHandler.java:38) ~[spark-1.10.124-standalone-agent.jar:?]
        at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
        at org.apache.sshd.common.io.nio2.Nio2CompletionHandler.completed(Nio2CompletionHandler.java:37) ~[spark-1.10.124-standalone-agent.jar:?]
        at sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:127) ~[?:?]
        at sun.nio.ch.Invoker.invokeDirect(Invoker.java:158) ~[?:?]
        at sun.nio.ch.UnixAsynchronousSocketChannelImpl.implRead(UnixAsynchronousSocketChannelImpl.java:562) ~[?:?]
        at sun.nio.ch.AsynchronousSocketChannelImpl.read(AsynchronousSocketChannelImpl.java:277) ~[?:?]
        at sun.nio.ch.AsynchronousSocketChannelImpl.read(AsynchronousSocketChannelImpl.java:298) ~[?:?]
        at org.apache.sshd.common.io.nio2.Nio2Session.doReadCycle(Nio2Session.java:494) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.io.nio2.Nio2Session.handleReadCycleCompletion(Nio2Session.java:411) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.io.nio2.Nio2Session$1.onCompleted(Nio2Session.java:382) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.io.nio2.Nio2Session$1.onCompleted(Nio2Session.java:377) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.io.nio2.Nio2CompletionHandler.lambda$completed$0(Nio2CompletionHandler.java:38) ~[spark-1.10.124-standalone-agent.jar:?]
        at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
        at org.apache.sshd.common.io.nio2.Nio2CompletionHandler.completed(Nio2CompletionHandler.java:37) ~[spark-1.10.124-standalone-agent.jar:?]
        at sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:127) ~[?:?]
        at sun.nio.ch.Invoker.invokeDirect(Invoker.java:158) ~[?:?]
        at sun.nio.ch.UnixAsynchronousSocketChannelImpl.implRead(UnixAsynchronousSocketChannelImpl.java:562) ~[?:?]
        at sun.nio.ch.AsynchronousSocketChannelImpl.read(AsynchronousSocketChannelImpl.java:277) ~[?:?]
        at sun.nio.ch.AsynchronousSocketChannelImpl.read(AsynchronousSocketChannelImpl.java:298) ~[?:?]
        at org.apache.sshd.common.io.nio2.Nio2Session.doReadCycle(Nio2Session.java:494) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.io.nio2.Nio2Session.handleReadCycleCompletion(Nio2Session.java:411) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.io.nio2.Nio2Session$1.onCompleted(Nio2Session.java:382) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.io.nio2.Nio2Session$1.onCompleted(Nio2Session.java:377) ~[spark-1.10.124-standalone-agent.jar:?]
        at org.apache.sshd.common.io.nio2.Nio2CompletionHandler.lambda$completed$0(Nio2CompletionHandler.java:38) ~[spark-1.10.124-standalone-agent.jar:?]
        at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
        at org.apache.sshd.common.io.nio2.Nio2CompletionHandler.completed(Nio2CompletionHandler.java:37) ~[spark-1.10.124-standalone-agent.jar:?]
        at sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:127) ~[?:?]
        at sun.nio.ch.Invoker$2.run(Invoker.java:219) ~[?:?]
        at sun.nio.ch.AsynchronousChannelGroupImpl$1.run(AsynchronousChannelGroupImpl.java:112) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]
        at java.lang.Thread.run(Thread.java:829) ~[?:?]

SSH client output:

$ ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -p 2025 spark@localhost
Warning: Permanently added '[localhost]:2025' (ECDSA) to the list of known hosts.
Password authentication
Password: 
shell request failed on channel 0

Extra Details

Tested on Kubuntu 21.10, Oracle Linux 8.10, OpenJDK 11.0.15, Zing 24.01.0.0+4(JDK 11.0.22+7-LTS), got the same error

@MCUmbrella MCUmbrella added the bug Something isn't working label Feb 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant