2011-09-14 144 views
0

我從jar文件創建了一個插件。我已經在plugin.xml中添加了這個插件,並且還在target中。當我嘗試從eclipse運行rcp應用程序時,它工作正常。然後我使用Eclipse產品導出嚮導導出產品。當我試圖打開eclipse.exe它給我錯誤Eclipse RCP添加外部插件

發生錯誤。 SEEE日誌文件xxxxxxxxxxx.log

日誌文件包含

!SESSION 2011-09-15 02:16:13.343 ----------------------------------------------- 
eclipse.buildId=unknown 
java.version=1.6.0_23 
java.vendor=Sun Microsystems Inc. 
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US 
Command-line arguments: -os win32 -ws win32 -arch x86_64 -data @noDefault 

!ENTRY org.eclipse.osgi 4 0 2011-09-15 02:16:15.189 
!MESSAGE Application error 
!STACK 1 
org.eclipse.core.runtime.CoreException: Plug-in in.expertsoftware.tdesk was unable to load class in.expertsoftware.tdesk.Application. 
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.throwException(RegistryStrategyOSGI.java:194) 
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:176) 
    at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:904) 
    at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243) 
    at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55) 
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:191) 
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) 
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) 
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) 
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620) 
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575) 
    at org.eclipse.equinox.launcher.Main.run(Main.java:1408) 
    at org.eclipse.equinox.launcher.Main.main(Main.java:1384) 
Caused by: java.lang.ClassNotFoundException: in.expertsoftware.tdesk.Application 
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506) 
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422) 
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410) 
    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:338) 
    at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:232) 
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1197) 
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174) 
    ... 16 more 

什麼地方出了錯。

回答

0

隨着對MANIFEST.MF的一些觀察,我發現jars.compile.order屬性。這實際上是造成問題的原因。除去這實際上不需要它之後,它也可以作爲產品很好地工作。