gpt4 book ai didi

java - 调用gdb调试java程序

转载 作者:行者123 更新时间:2023-12-02 05:07:59 25 4
gpt4 key购买 nike

我对编程还很陌生,在调试 java 程序时遇到了一些麻烦。我尝试使用gdb来调试我的java程序,但是无论我如何努力,它仍然根本不起作用。

emacs(GUI) 的迷你缓冲区中的错误消息始终是“No such file or directory , gdb”。我确信我的当前目录与源文件和编译文件(使用“javac -g xx.java”编译的可执行文件)相同。

所以,我的困惑是:该错误是否与以下内容有关: 1. 调用gdb的语法错误(使用Meta gdb xx ) 2. gdb的可执行java文件是什么/gdb如何识别它们 3.是否有可能是我的EMACS安装不完整,当我在命令行(Win8系统)中输入gdb时,根本没有出现NO gdb提示(类似(gdb....) )

最佳答案

错误没有这样的文件或目录,gdb

  • 如果错误消息来自emacs,则表示未安装gdb。要修复它,请安装gdb。请注意,gdb 不是 emacs 的一部分,它是一个单独的程序。如果您通过 bundle 获得 gdb,它通常是 gcc(GNU 编译器集合)的一部分,而不是 Emacs。来源相同 - FSF(自由软件基金会)/GNU 项目(GNU 不是 Unix),但它是不同的/单独的软件包。
  • 如果错误消息来自 gdb,则意味着 gdb 找不到可执行文件。请参阅下一点。

但是,根据您的描述,更有可能的是 gdb 根本没有安装。

gdb无法直接调试Java

gdb一般不能用于调试Java程序,它只能用于调试使用gcj编译成二进制文件的Java程序。另请参阅Java Debugging with gdb从它的手册。

您可能需要使用 jdb,它是 JDK 附带的 Java 调试器。

适用于 Java 的 Emacs?使用 IDE 代替

Emacs 确实是一个很棒的文本编辑器。人们对 Emacs 开的玩笑,比如“实际上 Emacs 是一个用于开发计算机游戏的 Common Lisp 实现,而它恰好拥有两个最好的文本编辑器之一作为演示应用程序”,这是对其伟大之处的双关语。我自己就是一名 vim 用户,我对 Emacs 及其对计算机科学(即 Common Lisp)的贡献怀有最深切的敬意。

但无论 Emacs 和 vim 多么出色,如今 IDE 都打败了它们。

三种最流行的 Java IDE

  • eclipse
  • NetBeans
  • IntelliJ IDEA

我推荐 IntelliJ IDEA 并且有我的理由,但你不能真的选择错误。他们都很好!

IDE 提供什么?

  • 语法突出显示
  • 最新 Java 版本的前沿
  • 数百项​​额外检查(尤其是 IntelliJ IDEA:检查)
  • 许多典型编辑自动化(尤其是 IntelliJ IDEA:意图)
  • 重构
  • Java 调试
  • Java反编译
  • 代码覆盖率
  • 代码完成
  • 集成访问 JavaDoc 帮助
  • 与单元测试框架集成
  • 与版本控制系统集成
  • 与 Android SDK 和模拟器集成
  • 与典型的 Java 构建工具 Ant、Maven、Gradle 集成
  • 这么多插件还有更多

Emacs 或 vim 也提供了其中一些功能 - 但不是全部。

我的 Emacs(或 vim)知识怎么样?

我自己是一名 vim 高级用户,但我不会将 vim 用于任何超出 Hello, World 的 Java,因为像 IntelliJ IDEA 这样的 IDE 更好。经常提出的一个论点是,我们用户在 vim 和 emacs 等编辑器上投入了大量资金,学习它们提高生产力的所有捷径。这些知识不需要丢失。 IntelliJ IDEA 为 Vim 用户提供了一个 IdeaVim 插件,为 Emacs 用户提供了一个 emacsIDEA 插件。我不知道,但我可以想象其他 IDE 也有类似的插件。

关于java - 调用gdb调试java程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27607901/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com