1

我为 NetBurner 平台做 C++ 嵌入式开发。他们有自定义 Eclipse 的插件,除了构建工具链之外,他们还在 Run Configuration 区域下添加了一个 Launch Group。当我决定安装 Subclipse(大错误)时,在 Indigo(32 位)下一切正常。安装完成后,我无法再成功运行现有配置。当我进入运行配置区域时,我注意到我以前使用的启动组丢失了。这是昨天早些时候的样子:

在安装 subclipse 之前运行配置对话框

这是今天的样子:

安装 subclipse 后运行配置对话框

我尝试过的事情

  1. 首先,我使用 Help->About->Installation Details 卸载了 Subclipse 插件,然后一次选择一个,卸载并在每次卸载后重新启动。不用找了。

  2. 然后我将原始 Eclipse Indigo/CDT 32 位下载解压缩到一个新文件夹。从我从制造商那里得到的 zip 中复制了 NetBurner 插件。不用找了。

  3. 使用不同的工作区启动,没有变化。

  4. 推出了 Galileo 版本,它使用了较旧的插件,并且仍然可以使用。

  5. 将较旧的插件复制到 Indigo 中,出现较旧的 NetBurner 启动器(但它实际上不适用于 Indigo)

  6. 删除了新插件中的旧插件,旧的 NetBurner 启动器消失了,新的启动器不显示。

  7. 尝试删除 {Workspace}.metadata.plugins\org.eclipse.debug.core.launches - 没有变化。有趣的是,即使 launch 有许多应该显示在 Run Configuration 下的 .launch 文件,也没有任何显示。

另一个奇怪(可能相关)的事情是 NetBurner 透视图的图标消失了,现在它只有 <NetBurner> 作为文本和一个通用透视图图标。

我仍然可以为 NetBurner 交叉编译和构建(即构建工具链仍然有效),它只是使用似乎缺少的运行配置的能力。

我没有想法,有没有人知道一些位于工作区之外和 Indigo 安装文件夹之外的全局设置可能会导致这种情况?

我在 Win 7 64 位终极版上运行,我运行 32 位版本的 Indigo,因为 64 位似乎无法与 NetBurner 插件一起使用。我还禁用了 General->Startup 和 Shutdown 下的两个 Mylyn 任务(它们似乎导致许多​​ Permgen 内存崩溃)。这是我昨天完美工作的相同设置。

更新

我还注意到 4 个插件中只有 3 个显示在“安装详细信息”插件窗格中。nbeclipse.core_2.6.0.jar 位于 eclipse 插件目录中,但未显示为已加载。所以我想我现在知道问题是插件没有加载,但我不知道为什么或如何让它加载,或者什么 subclipse 可能已经改变会导致这种情况。

Eclipse 加载的插件视图和插件的 eclispe 目录

4

1 回答 1

1

我怀疑 Subclipse 安装可能导致了它所依赖的其他一些插件的更新(请记住传递性插件依赖解决方案;如果您正在安装插件 A 并且它需要某个版本的插件 B您没有,插件 B 将安装或更新到该版本)。在这样做时,可能 NetBurner 插件无法再加载,因为它声明的依赖关系不再满足(即,它依赖于早期版本并且不容忍更高版本)。

您可以使用 OSGi 控制台来帮助确定插件未加载的原因。以下是一些应该有所帮助的参考资料:

顺便说一句,您不能只是将插件复制到 Eclipse 安装中并期望它们能够工作。对于现在的几个版本,Eclipse 不支持该功能。您必须使用帮助 > 安装新软件文件 > 导入 > 安装 > 从现有安装来安装插件。询问供应商是否有要安装的更新站点;就像我上面说的,不再支持简单地将东西放入 Eclipse 的plugins文件夹中,它不起作用。除了提供更新站点的供应商之外,唯一的其他选择是使用该dropins文件夹,如此所述。

于 2012-04-12T22:05:13.490 回答