【问题标题】:Attaching debugger fails with RuntimeException: "Cannot find module by package name"附加调试器失败并出现 RuntimeException:“无法按包名称找到模块”
【发布时间】:2017-03-08 18:44:25
【问题描述】:

当我尝试将 Android Studio 调试器附加到 Android 进程时会发生这种情况。有时,这会成功。但大多数情况下,它会因 Android NDK 支持插件中的 IDE 内部错误而失败,显示 RuntimeException: "Cannot find module by package name"。

当这是当前 Android Studio 会话中第一次出现此错误时,会弹出一个红色窗口并显示以下错误消息:

IDE 发生内部错误。单击以查看详细信息并提交错误 报告。

IDE 致命错误窗口显示以下消息:

插件 Android NDK 支持中的异常。

以下是错误消息和堆栈跟踪:

Cannot find module by package name
java.lang.RuntimeException: Cannot find module by package name
    at com.android.tools.ndk.run.editor.NativeAndroidDebugger.attachToClient(NativeAndroidDebugger.java:152)
    at com.android.tools.ndk.run.editor.AutoAndroidDebugger.attachToClient(AutoAndroidDebugger.java:98)
    at org.jetbrains.android.actions.AndroidConnectDebuggerAction.closeOldSessionAndRun(AndroidConnectDebuggerAction.java:65)
    at org.jetbrains.android.actions.AndroidConnectDebuggerAction.actionPerformed(AndroidConnectDebuggerAction.java:51)
    at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:191)
    at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter$1.run(ActionMenuItem.java:312)
    at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:958)
    at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:124)
    at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:282)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
    at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:110)
    at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:513)
    at com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:45)
    at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:533)
    at java.awt.Component.processMouseEvent(Component.java:6533)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
    at java.awt.Component.processEvent(Component.java:6298)
    at java.awt.Container.processEvent(Container.java:2236)
    at java.awt.Component.dispatchEventImpl(Component.java:4889)
    at java.awt.Container.dispatchEventImpl(Container.java:2294)
    at java.awt.Component.dispatchEvent(Component.java:4711)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
    at java.awt.Container.dispatchEventImpl(Container.java:2280)
    at java.awt.Window.dispatchEventImpl(Window.java:2746)
    at java.awt.Component.dispatchEvent(Component.java:4711)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.awt.EventQueue$4.run(EventQueue.java:731)
    at java.awt.EventQueue$4.run(EventQueue.java:729)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:857)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:654)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:386)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

我在 Windows 10 Pro(64 位)上使用 Android Studio v. 2.2.2,支持 Android NDK v. 1.0。

【问题讨论】:

    标签: android-studio android-ndk


    【解决方案1】:

    1.当调试对话框弹出时,选择调试器Java而不是auto

    这对我有用。

    2.第二个选择,删除.AndroidStudioXXX中Android Studio的config目录

    【讨论】:

      【解决方案2】:

      以上方式 1 对我有用。当你的项目也有 C++ 模块时,Android Studio 可能会默认尝试双模式。

      【讨论】:

        猜你喜欢
        • 2014-09-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-03-08
        • 2022-01-20
        相关资源
        最近更新 更多