【问题标题】:Unable to debug Eclipse Application because of missing classes由于缺少类,无法调试 Eclipse 应用程序
【发布时间】:2012-09-12 09:53:20
【问题描述】:

我使用 Xtext 2.2.1 编写了一个 DSL 插件。升级到 Xtext 2.3.0 后,由于以下错误,我无法调试相关的 Eclipse 应用程序(即,我正在使用标记为“Eclipse 应用程序”的启动配置从 Eclipse 中使用我的 DSL 插件启动实例):

Error instantiating builder 'org.eclipse.xtext.ui.shared.xtextBuilder'.
Plug-in org.eclipse.xtext.ui.shared was unable to load class org.eclipse.xtext.ui.shared.internal.ExecutableExtensionFactory.
org/eclipse/xtext/ui/guice/AbstractGuiceAwareExecutableExtensionFactory

我尝试了什么:

  1. 我在启动配置中取消选择目标平台中的所有捆绑包,单击“添加所需插件”,再次尝试,同样的错误。

  2. 我确保org.eclipse.xtext.uiorg.eclipse.xtext.ui.shared 版本2.3.0 在插件列表中可用并且都已启用。

  3. 当我将插件安装到我的 IDE 中时,它可以完美运行。我只是无法从 IDE 中启动 Eclipse 应用程序。

“验证插件”没有显示任何问题。

有什么办法可以解决这个问题吗?

【问题讨论】:

  • “更新”到底是什么意思?您是否将新版本的 XText 插件安装到“旧”Eclipse 中?您是否使用新版本重新生成了 XText 解析器?
  • 我更新了目标平台中的插件(将它们替换为存档更新站点中的版本,然后运行 ​​p2 工具来创建新的工件/内容 jar)。然后我使用这个目标平台再次安装了 Eclipse,所以平台和 Eclipse 使用相同的插件。我确实重新生成了解析器。正如我所说:解析器工作。 我的问题是我无法创建有效的启动配置。
  • 可能您已经尝试过,或者您有充分的理由不尝试,但无论如何:1) 将 XText 2.3 安装到“新”Eclipse 中而不是从较早的版本更新时,是否也会出现此问题版本? 2) 您可以通过右键单击您的 XText 项目并选择“作为 Eclipse 应用程序运行”而不是修改旧的启动程序来启动应用程序吗?
  • @tobias_k: 1) 使用我的目标存储库,我无法更新现有的 Eclipse 安装(它总是产生我无法修复的 p2 错误),所以这是一个干净的安装。 2) 我会试试的。
  • 好吧,我想主要是它又可以工作了,但我不得不承认,“创建一个新的启动器”并不值得赏金......也许如果你再等几天,你'仍然会得到更好的东西。我想我会记下这个作为答案,至少现在是这样。

标签: eclipse plugins osgi equinox launch-configuration


【解决方案1】:

虽然这既不是问题的答案,为什么启动器停止工作,也不是修复现有启动器的方法,但您至少应该能够通过创建一个新的启动器来恢复工作发射器。为此,只需从 XText 项目的上下文菜单中选择 Run As > Eclipse Application。这样,Eclipse 应该会为您处理启动器的创建和配置。

确保 Eclipse 确实创建了一个 new 启动器!如果 Eclipse 找到现有的 Eclipse 应用程序启动器,它可能会改用那个。您至少应该重命名旧的启动器,这样您就可以知道使用的是哪个启动器(显示在控制台视图的顶部)。新的启动器默认名称为“Eclipse Application”。如果 Eclipse 仍然使用旧的启动器,您可能必须先删除该启动器。

如果您想找出旧启动器出了什么问题,或者该启动器是专门配置的并且您想保留该配置,这可能会有所帮助:Eclipse 将启动器配置存储在位于工作区,因此您可以备份旧启动器,然后使用一些差异工具将其与新创建的启动器进行比较。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-05-07
    • 2020-05-07
    • 2022-06-27
    • 1970-01-01
    • 1970-01-01
    • 2015-09-29
    • 2018-10-01
    • 2018-08-09
    相关资源
    最近更新 更多