【问题标题】:Run remote debugger with ant script under Eclipse?在 Eclipse 下使用 ant 脚本运行远程调试器?
【发布时间】:2013-10-21 01:05:12
【问题描述】:

是否可以使用 Ant 脚本调用标准 Eclipse 远程调试器条目?

我想让 Ant 编译、部署,然后调试。

更新

实际上,我有独立的服务器,可以在调试模式下运行(这是 red5,由 Tomcat/Jetty 之类的东西组成)。它使用 batsh 脚本运行,该脚本使用

运行 JRE
set JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y

通常,为了调试应用程序,我会运行这个 shell 脚本,它会等待调试器。

然后我有Remote Java Application 启动配置。当我运行它时,它会连接到以前运行的 JRE,并允许我使用源代码跟踪执行并设置断点。

我想要的是自动化这个。

即我想要 Ant 目标,它 (1) 编译代码,(2) 部署它,然后 (3) 运行外部应用程序,最后 (4) 运行 eclipse 调试器以连接到它。

第 1-3 点很清楚,而第 4 点则不然。我认为 Eclipse 可以为此提供自定义 Ant 任务。

即我不想调试 Ant 脚本,而是用 Ant 脚本调试另一个代码。

【问题讨论】:

  • 您想在 ant 中部署/运行您的应用程序,然后将 eclipse 调试器连接到该实例...对吗?

标签: java eclipse debugging ant


【解决方案1】:

您可以通过在调用 ant 之前将 java 调试选项添加到 ANT_OPTS 环境变量来完成此操作。如果我们假设您想使用端口号 4000...

基于 Unix 的环境:

export ANT_OPTS="-Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=4000,suspend=n"

基于 Windows 的环境:

set ANT_OPTS=-Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=4000,suspend=n

【讨论】:

  • 这将调试正在执行ant脚本的JRE,不是吗?
  • 是的,这应该允许您调试它正在为您运行的代码,除非您使用具有fork="true" 的目标调用您的代码。
  • 我希望 Ant 脚本只运行 Eclipse 的远程调试器。实际调试的应用程序甚至可以在另一台机器上运行。
  • 啊,好的。根据您更新的帖子,我知道您现在想要什么。
猜你喜欢
  • 2011-06-10
  • 2012-01-17
  • 2012-01-24
  • 2015-08-03
  • 2014-07-02
  • 2011-05-26
  • 2016-10-25
  • 2011-01-25
相关资源
最近更新 更多