Eclipse Checkstyle菜单首选项在Eclipse Juno中有效,但在Indigo或Helios中无效.&



我已经安装了我自己的Checkstyle更新网站插件,它已经安装得很好,但是当我重新启动Eclipse,我检查Window -> Preferences中的Checkstyle选项时,它出现了下一个错误:

无法创建选定的首选项页。自动激活bundle net.sf.eclipsecs.ui(854)时发生错误。

错误日志如下:

org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter$TerminatingClassNotFoundException:自动激活bundle net. s.f.eclipsecs .ui(854)时发生错误。org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass (EclipseLazyStarter.java: 122)org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass (ClasspathManager.java: 463)org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass (DefaultClassLoader.java: 216)org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass (BundleLoader.java: 400)org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal (BundleLoader.java: 476)org.eclipse.osgi.internal.loader.BundleLoader.findClass (BundleLoader.java: 429)org.eclipse.osgi.internal.loader.BundleLoader.findClass (BundleLoader.java: 417)org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass (DefaultClassLoader.java: 107)java.lang.ClassLoader.loadClass (ClassLoader.java: 356)org.eclipse.osgi.internal.loader.BundleLoader.loadClass (BundleLoader.java: 345)org.eclipse.osgi.framework.internal.core.BundleHost.loadClass (BundleHost.java: 229)org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass (AbstractBundle.java: 1207)org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension (RegistryStrategyOSGI.java: 174)org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension (ExtensionRegistry.java: 905)org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension (ConfigurationElement.java: 243)org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension (ConfigurationElementHandle.java: 55)在org.eclipse.ui.internal.WorkbenchPlugin 1.美元运行(WorkbenchPlugin.java: 268)org.eclipse.swt.custom.BusyIndicator.showWhile (BusyIndicator.java: 52)org.eclipse.ui.internal.WorkbenchPlugin.createExtension (WorkbenchPlugin.java: 264)org.eclipse.ui.internal.EarlyStartupRunnable.getExecutableExtension (EarlyStartupRunnable.java: 117)org.eclipse.ui.internal.EarlyStartupRunnable.run (EarlyStartupRunnable.java: 66)在org.eclipse.core.runtime.SafeRunner.run (SafeRunner.java: 42)在org.eclipse.ui.internal.Workbench 63.美元运行(Workbench.java: 2470)org.eclipse.core.internal.jobs.Worker.run (Worker.java: 54)org.osgi.framework.BundleException:激活器net. s.f.eclipsecs.ui . checkstyleuiplugin对bundle net. s.f.eclipsecs.ui无效org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator (AbstractBundle.java: 171)org.eclipse.osgi.framework.internal.core.BundleContextImpl.start (BundleContextImpl.java: 679)org.eclipse.osgi.framework.internal.core.BundleHost.startWorker (BundleHost.java: 381)org.eclipse.osgi.framework.internal.core.AbstractBundle.start (AbstractBundle.java: 299)org.eclipse.osgi.framework.util.SecureAction.start (SecureAction.java: 440)org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger (BundleLoader.java: 268)org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass (EclipseLazyStarter.java: 107)…23日更导致:java.lang.NoClassDefFoundError: org/eclipse/e4/ui/model/application/MApplicationElement在net.sf.eclipsecs.ui.CheckstyleUIPlugin。(CheckstyleUIPlugin.java: 242)在sun.reflect.NativeConstructorAccessorImpl。newInstance0(本地方法)在sun.reflect.NativeConstructorAccessorImpl.newInstance (NativeConstructorAccessorImpl.java: 57)sun.reflect.DelegatingConstructorAccessorImpl.newInstance (DelegatingConstructorAccessorImpl.java: 45)java.lang.reflect.Constructor.newInstance (Constructor.java: 525)java.lang.Class.newInstance0 (Class.java: 374)java.lang.Class.newInstance (Class.java: 327)org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator (AbstractBundle.java: 166)…29日更导致:java.lang.ClassNotFoundException: org.eclipse.e4.ui.model.application.MApplicationElementorg.eclipse.osgi.internal.loader.BundleLoader.findClassInternal (BundleLoader.java: 513)org.eclipse.osgi.internal.loader.BundleLoader.findClass (BundleLoader.java: 429)org.eclipse.osgi.internal.loader.BundleLoader.findClass (BundleLoader.java: 417)org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass (DefaultClassLoader.java: 107)java.lang.ClassLoader.loadClass (ClassLoader.java: 356)…37更多

这个错误出现在Helios和Indigo中,但在Juno中不会,并且插件和特性版本是相同的。

我有什么问题?请帮帮我

亲切的问候

该插件显式地依赖于Eclipse4类,这些类仅在Eclipse4中可用。Eclipse的x流。当checkstyle的UI插件被创建时,你可以在堆栈跟踪中看到它:

Caused by: java.lang.NoClassDefFoundError: org/eclipse/e4/ui/model/application/MApplicationElement at net.sf.eclipsecs.ui.CheckstyleUIPlugin.(CheckstyleUIPlugin.java:242)

如果你确实需要旧版本的Eclipse插件,请使用Eclipse的更新管理器安装它,不要手动复制插件jar文件。更新管理器应该能够检测出哪个版本的插件与您的Eclipse版本匹配。

但我的建议是使用Eclipse Kepler,因为这是目前修复错误最多的最新版本。

最新更新