4

Eclipse Neon (4.6) 版本删除了 org.eclipse.core.runtime.compatibility,请参阅https://bugs.eclipse.org/bugs/show_bug.cgi?id=476405,其中提到了这一点。

我们的一些插件依赖于此,现在不会安装到这个版本的 Eclipse 中。

是否有一个简单的解决方法,除了修改这些插件以删除这种依赖关系,这可能是一项艰巨的任务?

4

2 回答 2

2

org.eclipse.core.runtime.compatibility是 Eclipse 2.x 的兼容层(在 OSGi 之前:没有META-INF/MANIFEST.MF,只有plugin.xml等)。Eclipse 3.0 是在 2004 年发布的,带有这个兼容层。

只需删除此依赖项并查找编译错误。可能没有,你就完成了。

于 2016-06-23T17:15:12.020 回答
1

为了迁移我们的插件,我做了以下事情:

1) 移除对 org.eclipse.core.runtime.compatibility、org.eclipse.core.runtime.compatibility.auth 的依赖

2) 在 maven bundle 插件的说明中,将 Bundle-Activator 值从 org.eclipse.core.internal.compatibility.PluginActivator 更改为插件类本身,它现在可以有启动/停止方法,代替旧的启动和关机方法。

3) 将插件的 1 参数构造函数(依赖于不再可用的兼容性类)更改为 0 参数构造函数。

4) 为旧版本 2 的处理方式找到了各种替代方法,例如获取插件的唯一标识符(例如,将 descriptor.getUniqueIdentifier() 替换为 getBundle().getSymbolicName())

于 2016-07-14T13:08:22.773 回答