10

我有一个网络应用程序。它当前部署在 Glassfish 实例中的远程服务器上。是否可以使用 Netbeans 远程连接到服务器并调试应用程序(就像我会使用普通的 java 应用程序一样)?

如果有人这样做并且可以提供见解或可以为我提供指导,那就太好了。

我知道这个功能存在于 Visual Studio 和 ASP.Net 中。我不确定是否有 java 等价物。

我在网上看到的大多数示例都是针对仅在远程计算机上运行的应用程序或用于调试在本地计算机上运行的 Glassfish 应用程序的。

4

1 回答 1

27

是的,有可能。

在调试模式下运行 GlassFish 后,转到 NetBeans 中的Debug菜单并单击Attach Debugger...,这将打开Attach对话框。你可能会选择类似的东西:

调试器:Java 调试器 (JPDA)

连接器:SocketAttach

传输:dt_socket

主机:hostname_or_ip_address

端口:9009

超时可以留空。在此对话框中单击“确定”时,您应该能够将 NetBeans 调试器连接到 GlassFish。

记住:

  1. 远程服务器上的防火墙(以及它们之间的任何网关)应该允许连接到调试器端口(在我的示例中为 9009)。
  2. 确保您使用的是匹配的端口号。在 GlassFish 管理控制台中,通常位于:http://localhost:4848
  3. 展开配置
  4. 展开server-config(或您使用的任何一个)。
  5. 单击JVM 设置
  6. 选中DebugEnabled
  7. 验证调试选项是否包含:
    -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009

阅读JPDA 文档以了解您可以使用的其他选项。

于 2012-05-07T17:22:08.830 回答