WEB开发网
开发学院软件开发Java 调试集成 Java 和 C/C++ 的代码 阅读

调试集成 Java 和 C/C++ 的代码

 2010-01-25 00:00:00 来源:WEB开发网   
核心提示:当在应用程序中无法使用纯 Java 语言的解决方案时,如何有效地调试 Java 和 C 混合的编程?因为还没有可以检查这样一个软件杂交的调试器,调试集成 Java 和 C/C++ 的代码,本文中,软件工程师 Matthew White 使用命令行工具来说明一些基本技术,要停止整个应用程序,以便调试本机代码,并分析了调试

当在应用程序中无法使用纯 Java 语言的解决方案时,如何有效地调试 Java 和 C 混合的编程?因为还没有可以检查这样一个软件杂交的调试器。本文中,软件工程师 Matthew White 使用命令行工具来说明一些基本技术,并分析了调试多语言应用程序时会遇到的问题。阅读完本文后,您将知道如何启动应用程序以便与调试器连接;可以使用什么样的调试器以及实现有效调试所需的技巧和提示。

对于某些应用程序,就是不可能使用纯 Java 语言的解决方案。有时需要 C/C++ 的原始性能;或者需要使用只有 C/C++ 接口的 API;或者需要访问操作系统调用(例如,Windows 注册表),它在 Java 类库中没有等价的调用。问题是目前没有调试器可以用于调试使用 Java 和 C 编程语言共同编写的应用程序。

注:本文中,我使用 Windows 2000 ,Java 调试器(JDB)和 GNU 调试器(GDB)作为主要调试器。这些技术可以轻松地适用于 UNIX/Linux 平台。

问题是什么?

现在思考这样一个问题:从操作系统的角度如何看待 Java 虚拟机(JVM)。操作系统将 Java 虚拟机只是看作另一个应用程序,采用类文件形式的输入并且产生输出。

任何使用 Java 调试器的调试过程,从操作系统的角度来看,都是应用程序级的操作。而调试本机应用程序被认为是一个更具特权的操作,要停止整个应用程序,以便调试本机代码,这意味着 JVM 不能与 Java 调试器交互。

1 2 3 4 5 6  下一页

Tags:调试 集成 Java

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接