在尝试连接到applet进行调试时,'shmemBase_attach失败:系统无法找到指定的文件'

Wee*_*vie 5 java debugging applet

我正在使用netbeans 6.1.

我的java运行时设置中有以下内容:

-agentlib:JDWP =运输= dt_shmem,地址= jdbconn,服务器= Y,暂停=正

以及netbeans中的附加对话框中的以下内容:

调试器:JPDA调试器

连接器:共享内存附加(通过共享内存连接到其他VM)

运输:dt_shmem

名称:jdbconn

我从netbeans Wiki上的FaqDebuggingAppletRemotely页面获得了上述设置.

applet位于aspx页面中(applet,whcih已签名,是一种通过客户端浏览器与传统平台进行通信的方法,我真的是C#开发人员).我设法得到显示的安全警告,这使我有机会附加到applet,但每当我尝试连接时,我看到:

附加到jdbconn

shmemBase_attach失败:系统找不到指定的文件

在netbeans的输出窗口中.

任何帮助感激不尽!

小智 0

当您使用共享内存选项 (transport=dt_shmem) 进行调试时,您将使用 Windows 内部共享内存对象在调试器和 jvm 之间进行通信。

这意味着如果您:

A。不从与您的 jvm 相同的物理机进行调试,或者

b. 不适用于 Windows 操作系统,

您无法在此模式下进行调试。

我不确定如果您在 Linux 工作站上的虚拟机上运行 Window 会发生什么...可能有效,也可能无效。

如果以上两者都没有问题,则需要进行更深入的调查才能找出问题,但同时,您可以使用普通套接字进行连接。

在Java运行时参数中指定:

-Xdebug -Xrunjdwp:传输=dt_socket,服务器=y,地址=8000,挂起=y

这告诉您的 jvm 以调试模式运行,加载 jdwp 库,等待连接连接到端口 8000,并暂停执行,直到这样的连接到达。

在 IDE 中相应地设置远程调试器。我不知道 Netbeans,但它会类似于 Connector = 套接字连接器,地址=8000。当您启动网页时,小程序将冻结加载,直到您连接为止,当然,在它到达侦听阶段之前您无法连接。

祝你好运!