有没有办法找到内部 类 移动的位置

Is there a way to find where the internal classes are moved

我们正在将我们的应用程序从 Eclipse Indigo 迁移到 Photon,我需要帮助找到特定 class 的解决方案或替代方案,它存在于 Indigo 而不是 Photon。

我们试图找出的 class 是 org.eclipse.ui.internal.navigator.AdaptabilityUtility。 由于它是内部 class,因此不可用。但是我们没能找到替代品。

只使用了class的一个函数:

IAdaptable openable = (IAdaptable) AdaptabilityUtility.getAdapter(
        selection.getFirstElement(), IResource.class);

如果有人知道可以在这里使用的替代方法,那将是一个很大的帮助。

Eclipse 内部为 Eclipse 4 完全重写,因此通常内部 classes 可能没有确切的替代品,它们从来不是官方 API.

然而,对于 AdaptabilityUtility,目前的 org.eclipse.core.runtime.Adapters class 应该可以工作:

IResource resource = Adapters.adapt(selection.getFirstElement(), IResource.class);

Adapters.adapt 使用泛型,因此不需要转换。 Adapters 不是内部的,所以它是官方的 API.