2008-12-01 68 views
2

我想注册以获得Eclipse中所有Java更改的通知。我可以通过调用JavaCore.addElementChangedListener()来做到这一点。但是,我不希望我的插件被加载,直到加载org.eclipse.jdt.core。我的黑客试图做到这一点是声明一个org.eclipse.jdt.core扩展点的虚拟扩展,但它不适用于所有版本的Eclipse。再加上它很丑。我怎样才能确保我的插件在另一个插件被加载时加载?在Eclipse中,如何在加载另一个插件时加载我的插件?

+0

你的插件是OSGi包吗? – 2008-12-01 23:01:19

回答

2

事实证明,当加载另一个插件时没有内置的方法来加载我的插件。解决这个问题最常用的方法是强制我的插件在启动时加载并为其他插件设置侦听器。然后,当jdt.core加载时,我可以添加我的元素更改侦听器。但是,即使理论上可能,我也无法弄清楚如何强制我的插件在启动时加载。我用丑陋的黑客去了。

+0

这是我能想到的最好的。但你要求干净。感谢JUnit和敏捷btw。 – jamesh 2008-12-04 20:55:39