【问题标题】:Code doesn't execute in debug mode, asks for source代码不在调试模式下执行,要求提供源代码
【发布时间】:2017-04-13 20:54:11
【问题描述】:

我正在执行一个执行一些数据库操作的代码。

当我在 Eclipse 中使用 Run 命令执行它时,它运行良好。

但是当我在调试模式下执行它时,我找不到源代码

JAR 文件 mysql-connector-java-5.1.39-bin.jar 没有源附件

【问题讨论】:

    标签: java eclipse


    【解决方案1】:

    您正在尝试单步执行 mysql-connector-java 提供的代码,但您尚未链接 Eclipse 的源代码以实际执行单步执行。

    最简单的做法是跳过该行(因为您可能不关心它)而不是尝试调试连接器代码。您可能还想tweak your debugger settings 以防止异常暂停您的执行。

    正如@nitind 指出的那样,您还可以filter 类型、包和模式,以便调试器避免单步执行它们。

    如果这不起作用,或者您确实需要进入连接器代码,您需要在项目的构建配置中下载source jar(来自Maven)和attach it

    【讨论】:

    • 我经常遇到这种情况...我下载了一个类反编译器插件...不,我不关心源代码:P
    • @dimo414 但是代码在使用 Run 命令执行期间是否不需要源文件?那么它在哪里获取 mysql-connector 的源代码呢?
    • 不,您已经安装了 binary jar,但它不包含任何源代码。项目通常分发单独的二进制和源 jar,而不是一个包含两者的更大 jar,以减少文件大小。
    • 为了澄清一点,它只需要在调试时专门向您显示它的源代码。通过在 Step Filtering 首选项页面上启用并在 Step Filters 中列出这些类,您可以不必费心尝试进入这些类。 help.eclipse.org/neon/…
    【解决方案2】:

    eclipse 程序中的调试与实际加载的类一起工作。

    您发布的问题看起来您正在使用的类在项目中未找到,但在分发 jar 中没有调试信息。

    这很可能通过更改项目的构建路径以停止使用此 jar 并让 JVM 使用该项目来解决。

    或者你可以试试mvn clean eclipse:eclipse

    【讨论】:

      【解决方案3】:

      这是因为调试器正在运行某个类文件...

      要查看这个,要么下载源代码并附上它,要么安装一些类反编译器插件(我正在使用JAD Eclipse Plugin)。第一种方案更好。

      【讨论】:

      • 是的...我将链接我使用的内容
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-07
      • 1970-01-01
      • 1970-01-01
      • 2020-07-17
      • 2017-01-24
      相关资源
      最近更新 更多