Tag: eclipse fragment

是否有与Eclipse片段项目相同的BundleActivator?

我正在构建一个Eclipse插件,它在常规插件项目中提供了一组核心function。 我通过片段项目提供的可选function。 但我需要片段在启动时使用主插件注册自己。 我不能在片段项目中拥有Bundle-Activator。 所以我想知道是否有一些替代机制来声明我可以挂钩的入口点或某些回调? 如果除了将片段项目转换为常规插件项目之外没有其他选择,那么我需要注意一个缺点吗? 这是我根据接受的答案使用的解决方案: final IExtensionRegistry registry = Platform.getExtensionRegistry(); final IExtensionPoint extensionPoint = registry.getExtensionPoint(“myextensionid”); final IExtension[] extensions = extensionPoint.getExtensions(); for (int j = 0; j < extensions.length; ++j) { final IConfigurationElement[] points = extensions[j].getConfigurationElements(); for (int i = 0; i < points.length; ++i) { if ("myelementname".equals(points[i].getName())) { try { final Object objImpl= […]

Java 7u55 Eclipse系统片段类加载器

在以前的Java版本中,我能够使用具有系统包主机的片段,以便为引导类加载器提供类。 在我的特殊情况下,这是为了支持在Eclipse中使用Jacorb。 这一切在Java 7u55之前都运行良好。 我创建了一个osgi片段,其中包含Jacorb的所有jar子。 清单看起来像这样: Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: org.jacorb.systemFragment Bundle-SymbolicName: org.jacorb.systemFragment Bundle-Version: 3.3.0.20140422-1108 Bundle-ClassPath: jars/slf4j-jdk14-1.6.4.jar, jars/slf4j-api-1.6.4.jar, jars/jacorb-3.3.jar Fragment-Host: system.bundle; extension:=framework Export-Package: org.jacorb.config;version=”3.3.0″, …. 我还将以下内容指定为vm args: -Dorg.omg.CORBA.ORBClass=org.jacorb.orb.ORB -Dorg.omg.CORBA.ORBSingletonClass=org.jacorb.orb.ORBSingleton -Dorg.omg.PortableInterceptor.ORBInitializerClass.standard_init=org.jacorb.orb.standardInterceptors.IORInterceptorInitializer 当我在Java 7u51中运行我的Eclipse应用程序时,我能够成功调用ORB.init()。 当我在Java 7u55中运行相同的应用程序时,我得到以下内容: Caused by: java.lang.ClassNotFoundException: org.jacorb.orb.ORBSingleton at java.net.URLClassLoader$1.run(URLClassLoader.java:366) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at […]