远程调试在Glassfish中运行的Java Web应用程序

use*_*041 9 java netbeans glassfish java-ee

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

如果有人这样做并且可以提供见解或者可以指向我指导,那将是很好的.

我知道Visual Studio和ASP.Net存在此功能.我不确定是否有java等价物.

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

Edw*_*son 26

对的,这是可能的.

在调试模式下运行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. 选中Debug to Enabled.
  7. 验证调试选项是否包含:
    -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009

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