在VisualStudio 2003中debuggingJNI代码

如何在不使用eclipse的情况下debuggingVisualStudio 2003中的JNI代码?

http://www.velocityreviews.com/forums/t152740-jni-debugger.html

概要:基本上,这个想法是,你在Eclipse下启动你的Java程序,然后告诉VC也附加到正在运行的进程。

启动您的应用程序,并让您的应用程序等待用户操作(对话框或其他)。 打开VS并转到(在德语)“Debuggen”(调试) – >“processe”(进程)他们你会看到javaw.exe

选择javaw.exe并按“安装”(Attach)

让你的Java应用程序运行。

当我记住,在C ++中的代码页,放置断点必须在VS中打开。 当断点被自动命中时,VS不会打开页面。 当dll被加载,并且执行放置断点的代码行时,VS中的调试器将停在此位置。 注意:这只会发生,当你编译你想调试的DLL与调试选项! 否则调试器不会停在C ++断点处。

我在半年前做了这个,但这应该是正确的步骤。

它希望你得到它。

你有两个选择:

  1. 如Markus Lausberg的回答所述,您可以启动Java进程并将VS调试器附加到它。
  2. 另一种选择是使用Visual Studio的项目设置来指定java.exe作为调试时执行的程序。 把必要的类路径以及其他所有你要传给Java的东西放到命令行中,设置工作目录,当你启动调试器时,它会启动Java,捕获你的JNI DLL的负载,断点等将作为预期。