【问题标题】:Multiple IDE debugging in EclipseEclipse中的多个IDE调试
【发布时间】:2010-07-15 12:43:16
【问题描述】:

首先,我绝对不是 Java 专家,也不是 Eclipse 的普通用户。由于我们团队成员的个人情况,我不得不介入漏洞并修复当前正在开发的两个 java 应用程序中的一些错误。

我们有一个核心应用程序 (CORE) 和一个包含对该 CORE 的引用的 API。我需要做的是调试 API 但进入核心代码。我已将两个项目的所有源代码都加载到 IDE 中,但我无法在 CORE 中设置断点。我假设它使用的是 API 中包含的 CORE 的 jar 版本,而不是 CORE 中的代码。

我希望这是有道理的。

干杯

【问题讨论】:

  • 您的问题是什么?你想在 CORE 中设置断点?
  • 是的,完全正确.. 抱歉,如果不清楚

标签: java eclipse debugging


【解决方案1】:

通过单击编辑器的左侧列在 API 中定义断点。然后,尝试进入 CORE 的一个功能。 Eclipse 会抱怨它找不到要调试的源。但是,会出现一个按钮,让您定义在哪里可以找到这些源:在 jar 文件中或在外部目录中。

如果你要在 CORE 的类中包含 CORE 的源代码,通常 eclipse 也会自动找到它。

干杯

【讨论】:

  • 好的,谢谢,这很有用,因为这正是我所期望的。也许我在正确的轨道上,但有些地方不太对。
【解决方案2】:

我已将两个项目的所有源代码都加载到 IDE 中,但我无法在 CORE 中设置断点。我假设它使用的是 API 中包含的 CORE 的 jar 版本,而不是 CORE 中的代码。

更改第二个项目的构建路径,使其不再引用第一个项目的打包 JAR,而是引用项目本身。

在第二个项目的属性中,转到 Java Build Path,从 Libraries 选项卡中删除 JAR,然后在 Projects 选项卡下添加第一个项目。

【讨论】:

  • 非常感谢这正是我所追求的。我现在能够在适当的情况下单步执行这两个项目并打断点。
【解决方案3】:

您需要做的是远程调试。 Here is one(几篇)文章涵盖了该主题并展示了如何设置远程调试会话。 (接近正文的结尾)

基本上,您使用一些额外的参数启动应用程序,而在 Eclipse 上,您有一个包含源代码的项目。然后启动远程调试会话,可以在远程 JVM 上设置断点、检查变量等。

【讨论】:

  • API 包含对 CORE.jar 的库引用。 API 调用 CORE 以实现各种功能。我可以设置断点,但没有命中。
  • 对不起,我的意思是断点没有在 Core 中命中。API 断点是。 main 在 API 中(即 API 启动动作)
  • 你是在Core project的源代码中设置断点吗?
【解决方案4】:

您可能拥有由 Eclipse 编译为字节码并存在于 IDE 中的 CORE java 类。这意味着 API 调用的代码很可能不是您认为的代码,因为它可能存在于 API 旁边的 jar 文件中。

您需要将源附加到 jar 文件,而不是在它们的属性中。将它们压缩并附加该压缩文件或附加“com”/“org”等包名称开始的文件夹。

【讨论】:

  • 好的,这是源代码附件属性?
猜你喜欢
  • 2016-03-31
  • 1970-01-01
  • 2016-12-14
  • 1970-01-01
  • 2014-09-26
  • 1970-01-01
  • 1970-01-01
  • 2020-08-10
  • 2011-11-30
相关资源
最近更新 更多