如何使用weblogic服务器在eclips中调试java Web应用程序

我有Eclipse IDE和WebLogic 11g服务器的Java应用程序。 是否可以远程调试应用程序? 如果有,怎么样?

startWeblogic.cmd下行添加到用于启动Weblogic服务器的脚本文件中,例如startWeblogic.cmd

 set JAVA_OPTIONS=-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8453,server=y,suspend=n 

Weblogic Server控制台应显示以下消息:

 Listening for transport dt_socket at address: 8453 

在eclipse中按照以下说明操作:

  1. 从工作台菜单栏中选择“运行”>“调试配置… ”(或从“调试”工具栏按钮的下拉菜单中选择“调试配置…” )以显示启动配置对话框。
  2. 在左侧的配置类型列表中选择Remote Java Application
  3. 单击“ 新建”工具栏按钮。 将创建一个新的远程启动配置,并显示三个选项卡:Connect,Source和Common。
  4. 在“ 连接”选项卡的“ 项目”字段中,键入或浏览以选择要用作启动参考的项目(用于源查找)。 不需要指定项目。
  5. 连接 ”选项卡的“ 连接类型”字段允许您选择连接虚拟机的方式。 在大多数情况下,您将在特定位置附加到vm,在这种情况下选择标准(套接字附加)。 其余的说明假设您已选择此选项。 标准(套接字侦听)连接类型创建一个启动,它将侦听来自远程VM的传入连接。 您需要指定启动将侦听的端口。
  6. 在“连接”选项卡的“ 主机”字段中,键入运行Java程序的主机的IP地址或域名。如果程序与工作台在同一台计算机上运行,​​请键入localhost。
  7. 在“连接”选项卡的“ 端口”字段中,键入远程VM接受连接的端口。 通常,在启动远程VM时指定此端口。
  8. 允许终止远程 VM标志是一个切换,用于确定调试器中是否启用了Terminate命令。 如果希望能够终止要连接的VM,请选择此选项。
  9. 单击Debug 。 启动尝试连接到指定地址和端口的VM,结果显示在Debug视图中。 如果启动程序无法连接到指定地址的VM,则会显示错误消息。

文档:

  • 使用远程调试 – BEA WebLogic Server
  • 使用eclipse进行Weblogic远程调试
  • 使用Eclipse远程调试Java应用程序
  • 使用远程Java应用程序启动配置

首先,确保在Weblogic的启动脚本上启用远程调试:

 -Xdebug -Xrunjdwp:transport=dt_socket,address=9999,server=y,suspend=n 

(地址是端口号;记住这个号码)

其次,您需要在Eclipse中设置新的远程Web应用程序调试配置:

 Run -> Debug Configurations... 

然后创建一个新的远程Web应用程序配置。 确保指定主机和端口(如上所述),并在“源”选项卡上添加Web应用程序的任何源。

您现在应该能够运行该调试配置,以在指定的Weblogic服务器上调试Eclipse中的Web应用程序。