【问题标题】:Android Stetho-Realm : FATAL EXCEPTION: StethoWorker-main-5Android Stetho-Realm:致命例外:StethoWorker-main-5
【发布时间】:2019-05-30 10:02:02
【问题描述】:

我正在使用 Realm gradle plugin 5.11.0 和 stetho realm 2.1.0 ,但是当我连接到 chrome 时应用程序崩溃并且我无法检查 db。我遇到了异常

E/AndroidRuntime: FATAL EXCEPTION: StethoWorker-main-5
Process: kt.esense.com.realmsample, PID: 2201
java.lang.NoClassDefFoundError: io.realm.internal.LinkView
    at libcore.reflect.InternalNames.getClass(InternalNames.java:55)
    at java.lang.Class.getDexCacheType(Class.java:2551)
    at java.lang.reflect.AbstractMethod.getParameterTypes(AbstractMethod.java:169)
    at java.lang.reflect.Method.getParameterTypes(Method.java:193)
    at java.lang.Class.getDeclaredMethods(Class.java:1812)
    at com.facebook.stetho.inspector.MethodDispatcher.buildDispatchTable(MethodDispatcher.java:115)
    at com.facebook.stetho.inspector.MethodDispatcher.findMethodDispatcher(MethodDispatcher.java:53)
    at com.facebook.stetho.inspector.MethodDispatcher.dispatch(MethodDispatcher.java:60)
    at com.facebook.stetho.inspector.ChromeDevtoolsServer.handleRemoteRequest(ChromeDevtoolsServer.java:129)
    at com.facebook.stetho.inspector.ChromeDevtoolsServer.handleRemoteMessage(ChromeDevtoolsServer.java:111)
    at com.facebook.stetho.inspector.ChromeDevtoolsServer.onMessage(ChromeDevtoolsServer.java:87)
    at com.facebook.stetho.websocket.WebSocketSession$1.handleTextFrame(WebSocketSession.java:176)
    at com.facebook.stetho.websocket.WebSocketSession$1.onCompleteFrame(WebSocketSession.java:136)
    at com.facebook.stetho.websocket.ReadHandler.readLoop(ReadHandler.java:44)
    at com.facebook.stetho.websocket.WebSocketSession.handle(WebSocketSession.java:45)
    at com.facebook.stetho.websocket.WebSocketHandler.doUpgrade(WebSocketHandler.java:117)
    at com.facebook.stetho.websocket.WebSocketHandler.handleRequest(WebSocketHandler.java:83)
    at com.facebook.stetho.server.http.LightHttpServer.dispatchToHandler(LightHttpServer.java:84)
    at com.facebook.stetho.server.http.LightHttpServer.serve(LightHttpServer.java:61)
    at com.facebook.stetho.inspector.DevtoolsSocketHandler.onAccepted(DevtoolsSocketHandler.java:52)
    at com.facebook.stetho.server.ProtocolDetectingSocketHandler.onSecured(ProtocolDetectingSocketHandler.java:63)
    at com.facebook.stetho.server.SecureSocketHandler.onAccepted(SecureSocketHandler.java:33)
    at com.facebook.stetho.server.LazySocketHandler.onAccepted(LazySocketHandler.java:36)
    at com.facebook.stetho.server.LocalSocketServer$WorkerThread.run(LocalSocketServer.java:167)
 Caused by: java.lang.ClassNotFoundException: Didn't find class "io.realm.internal.LinkView" on path: DexPathList[[zip file "/data/app/kt.com.realmsample-1/base.apk"],nativeLibraryDirectories=[/data/app/kt.com.realmsample-1/lib/arm64, /data/app/kt.com.realmsample-1/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:74)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:380)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
    at libcore.reflect.InternalNames.getClass(InternalNames.java:53)

【问题讨论】:

    标签: android realm realm-mobile-platform stetho


    【解决方案1】:

    对于 Realm 3.7.1-3.7.2,Stetho-Realm 根本无法工作(除非您为代码分叉并修复它)

    对于 Realm 4.0.0+(包括您的 Realm 5.11.0 版本),您需要使用支持 Realm 4.0+ 的 WickeDev 的 fork。

    repositories {
        maven { url 'https://github.com/WickeDev/stetho-realm/raw/master/maven-repo' }
    }
    
    dependencies {
        implementation 'com.uphyca:stetho_realm:2.3.0'
    }
    

    【讨论】:

    • 那是不可能的。 stetho-realm 2.3.0 应该可以处理这种情况。这意味着您的代码中有多个库版本而没有意识到,您应该使用gradlew dependencies 找出是什么为您提供了多个 Realm 版本。
    • ive realm 6.0.1,当我从 stetho web sql 点击我的数据库时,它说连接丢失
    • 使用此处列出的 Stetho-Realm 版本?
    • WickeDev repo 不再存在...还有其他选择吗?我尝试了https://github.com/uPhyca/stetho-realm,但它的版本较旧(似乎也不起作用)...
    • @EpicPandaForce 似乎 2.3.0 缺少 .pom。它仅在 2.2.2 之前可用:github.com/Zhuinden/stetho-realm/tree/master/maven-repo/com/…。然而,对于 Realm 6.0.2,它就像一个魅力。谢谢! ?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-11
    • 2014-09-10
    • 1970-01-01
    • 2019-03-05
    • 2013-02-14
    • 1970-01-01
    相关资源
    最近更新 更多