【问题标题】:jmockit debug binary source mismatchjmockit 调试二进制源不匹配
【发布时间】:2014-08-21 03:47:52
【问题描述】:

我正在调试一个使用 Jmockit(v1.1) 的单元测试用例,我遇到的一个奇怪的场景是:一个类被模拟以替换一个方法实现。然后在调试时,该类源代码与其相应的二进制文件不一致。我通过调试一个不存在的方法(从源代码查看)确认了这一点。

我在eclipse上试过字节码大纲工具,但是字节码基本上是和源代码对齐的,而不是真正执行的字节码。

Tools Used(MVN, eclipse),当错误开始时,调试面板出现错误com.sun.jdi.InternalException: Got error code in reply:35 occurred retrieving this from stack frame

如何调查这种源/二进制不匹配问题?

【问题讨论】:

    标签: java jmockit


    【解决方案1】:

    您没有提及您正在使用的工具/IDE,但根据经验,调试 IDE 使用的库可能与运行时库不匹配,在我的情况下,它是使用 provided 范围的 Eclipse+Maven(M2E)依赖项(即:您说将提供 2.1 版,但在运行时实际上是 2.2 版)。所以运行时堆栈跟踪中的行与 Eclipse 显示的源不匹配。

    【讨论】:

    • 我仍然不知道如何追踪它的确切原因,但我们猜测这是我们的IDE的问题(STS,在eclipse版本方面可能有点旧)
    猜你喜欢
    • 1970-01-01
    • 2012-05-23
    • 1970-01-01
    • 1970-01-01
    • 2019-09-08
    • 1970-01-01
    • 2014-03-07
    • 2023-01-14
    • 1970-01-01
    相关资源
    最近更新 更多