【问题标题】:Replicate Eclipse's "display tab" in my Java/Swing application?在我的 Java/Swing 应用程序中复制 Eclipse 的“显示选项卡”?
【发布时间】:2009-07-14 18:56:18
【问题描述】:

所以,我有一个 Swing GUI,出于测试目的(我的任务将与之交互的其他应用程序尚未全部开发),我希望能够提供一个“调试控制台” .

我的想法是我可以使用这个控制台在我的模型中显式设置值,并验证适当的 GUI 元素是否得到更新。 Eclipse 调试器的“显示选项卡”基本上正是我想要的——一旦你遇到断点,你可以输入适用于当前方法上下文的 Java 代码,并像该代码是当前断点处源代码的一部分一样执行它.

但是,我希望它作为我的应用程序的一部分 - 无需运行单独的应用程序 (Eclipse)、设置断点、命中断点等。(这就是我现在正在做的 - 它有效,但它有点烦人。)是否有任何现有的图书馆包含类似的东西?

【问题讨论】:

  • 为什么要这个重复调试功能?
  • 我想我在最初的问题中说过这个 - 但我想将它内置到我的应用程序中,而不是运行我的应用程序 + 外部调试器并在两者之间来回切换运行时。

标签: java eclipse debugging swing testing


【解决方案1】:

这里有一个有趣的技术是结合 JavaScript 使用文本窗格(Rhino 引擎现在内置在 JRE 中)。该脚本将有权访问您的应用程序对象,反之亦然。

这是calling Java from JavaScript的信息

这里是executing the script from the Java side 的信息 - 那里的代码示例几乎构建了您想要做的事情(只需获取文本窗格中的文本并使用脚本引擎执行它)。

我们将这种东西用于高级配置对话框,我们在其中引入功能但还没有围绕它们构建的可靠 GUI。很酷,您可以在 JavaScript 中实现一个接口,然后在 Java 应用程序的其他地方使用生成的对象。

【讨论】:

  • 很好,谢谢! (现在我只需要去学习 JavaScript...)
  • 哈哈——你可能想要做的事情并不难——设置一个变量,检查一个变量。我将由您决定是否应将我的回复标记为已接受的答案:-)
  • 是的,绝对足以满足我目前的需求 - 非常感谢。
猜你喜欢
  • 1970-01-01
  • 2010-10-31
  • 2012-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多