Home Features Docs Blog Support GitHub

Error with version '1.8.2'

I have error with version ‘1.8.2’

classpath group: ‘org.multi-os-engine’, name: ‘moe-gradle’, version: ‘1.8.2’

java.lang.NoSuchMethodError: No virtual method clear()Ljava/nio/ByteBuffer; in class Ljava/nio/ByteBuffer; or its super classes (declaration of ‘java.nio.ByteBuffer’ appears in /Users/gtc/.moe/moe-sdk-1.8.1/sdk/moe-core.dex)

if i run with old version 1.7.3, my app run not error

Are you able to share a test project that could reproduce this problem?

Thanks for read my topic… my enghlish not well.

My project is used libgdx 1.10.0…now version libgdx not support ios-moe, but i mod it (i copy old code “gdx-backend-moe” of 1.9.11 and replace libs ‘moe-core.jar, moe-ios.jar’ old with ‘moe-core.jar, moe-ios.jar’ of v1.8.2)… for build ios using xcode. In thi project i use source code netty for connect tcp nettwork with server.
Screen Shot 2021-10-20 at 21.00.05

When i call function connect to my server, this error will be display on xcode
with moe version .18.1
java.lang.NoSuchMethodError: No virtual method clear()Ljava/nio/ByteBuffer; in class Ljava/nio/ByteBuffer; or its super classes (declaration of ‘java.nio.ByteBuffer’ appears in /Users/gtc/.moe/moe-sdk-1.8.1/sdk/moe-core.dex)
Screen Shot 2021-10-20 at 16.26.46
with moe version 1.8.2
art W 7442 92533 /Users/noisyfox/Documents/projects/moe/moe-art/aosp/art/runtime/thread_list.cc:820] No such thread id for suspend: 49
art W 7442 92560 /Users/noisyfox/Documents/projects/moe/moe-art/aosp/art/runtime/thread_list.cc:820] No such thread id for suspend: 39

with moe version 1.7.3 don’t have this error…and now i use this version for build app
Screen Shot 2021-10-20 at 21.00.35

Which Java version do you use for compiling? Maybe 16? The signature of ByteBuffer.clear is different in Java 16 than in Java 7/8(and the signature in your crash looks like the Java 16 signature).
@Mr_John

i build with jdk8…with jdk >9 i have error “Retrolambda”

Could you give the full error stacktrace?

java.lang.NoSuchMethodError: No virtual method clear()Ljava/nio/ByteBuffer; in class Ljava/nio/ByteBuffer; or its super classes (declaration of ‘java.nio.ByteBuffer’ appears in /Users/duchien/.moe/moe-sdk-1.8.2/sdk/moe-core.dex)

at h.n.d.gtc.client.app.network.io.netty.buffer.PooledHeapByteBuf.setBytes(PooledHeapByteBuf.java:261)

at h.n.d.gtc.client.app.network.io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1094)

at h.n.d.gtc.client.app.network.io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:367)

at h.n.d.gtc.client.app.network.io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:123)

at h.n.d.gtc.client.app.network.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:644)

at h.n.d.gtc.client.app.network.io.netty.channel.nio.NioEventLoop.processSelectedKeysPlain(NioEventLoop.java:544)

at h.n.d.gtc.client.app.network.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498)

at h.n.d.gtc.client.app.network.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:458)

at h.n.d.gtc.client.app.network.io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858)

at h.n.d.gtc.client.app.network.io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:144)

at java.lang.Thread.run(Thread.java:818)

i use open source netty-all-4.1.54.Final on github https://github.com/netty/netty/tree/netty-4.1.54.Final

Seems that the version you are using requires java 9, which is not supported ATM.

Also by looking at the stack trace and the link you provided, seems that the actual netty version you are using is not the one you said (4.1.54), because the stack trace shows PooledHeapByteBuf.java:261 but https://github.com/netty/netty/blob/netty-4.1.54.Final/buffer/src/main/java/io/netty/buffer/PooledHeapByteBuf.java there is not line 261.