2014-02-10 75 views
0

我寫了一個應該在工作空間啓動時執行的eclipse插件(請參閱Executing eclipse plugin automatically)。當我使用「運行」按鈕進行嘗試時,它完美地工作。但是現在我創建了一個更新站點並通過更新管理器安裝了插件。我不知道爲什麼,但現在在eclipse工作區啓動時它不會執行。未執行Eclipse插件

這裏有什麼問題?的plugin.xml

內容:

<?xml version="1.0" encoding="UTF-8"?> 
<?eclipse version="3.4"?> 
<plugin> 
    <extension point="org.eclipse.ui.startup"> 
     <startup class="plugin.first.handlers.StartClass"/> 
    </extension> 
</plugin> 

我發現了一些其他信息在/workspace/.metadata/.log

!SESSION 2014-02-10 14:17:08.358 ----------------------------------------------- 
eclipse.buildId=4.3.0.M20130911-1000 
java.version=1.7.0_02 
java.vendor=Oracle Corporation 
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=de_DE 
Command-line arguments: -os win32 -ws win32 -arch x86_64 

!ENTRY org.eclipse.ui.workbench 4 2 2014-02-10 14:17:21.380 
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.ui.workbench". 
!STACK 0 
java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils 
    at plugin.first.handlers.ClearFolder.doClear(ClearFolder.java:12) 
    at plugin.first.handlers.StartClass.earlyStartup(StartClass.java:15) 
    at org.eclipse.ui.internal.EarlyStartupRunnable.runEarlyStartup(EarlyStartupRunnable.java:87) 
    at org.eclipse.ui.internal.EarlyStartupRunnable.run(EarlyStartupRunnable.java:66) 
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) 
    at org.eclipse.ui.internal.Workbench$55.run(Workbench.java:2551) 
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) 
Caused by: java.lang.ClassNotFoundException: org.apache.commons.io.FileUtils cannot be found by plugin.clearsvnauth_1.0.0.201402101022 
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501) 
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421) 
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412) 
    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    ... 7 more 

!ENTRY org.eclipse.ui 4 4 2014-02-10 14:17:21.393 
!MESSAGE Unhandled Exception 

!ENTRY plugin.clearsvnauth 4 0 2014-02-10 14:17:21.394 
!MESSAGE Unable to execute early startup code for an extension 
!STACK 0 
java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils 
    at plugin.first.handlers.ClearFolder.doClear(ClearFolder.java:12) 
    at plugin.first.handlers.StartClass.earlyStartup(StartClass.java:15) 
    at org.eclipse.ui.internal.EarlyStartupRunnable.runEarlyStartup(EarlyStartupRunnable.java:87) 
    at org.eclipse.ui.internal.EarlyStartupRunnable.run(EarlyStartupRunnable.java:66) 
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) 
    at org.eclipse.ui.internal.Workbench$55.run(Workbench.java:2551) 
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) 
Caused by: java.lang.ClassNotFoundException: org.apache.commons.io.FileUtils cannot be found by plugin.clearsvnauth_1.0.0.201402101022 
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501) 
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421) 
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412) 
    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    ... 7 more 

爲什麼我得到java.lang.NoClassDefFoundError

+0

檢查'plugin.xml'是否包含在代碼中。 –

+0

'plugin.xml'包含在項目中。我已將其內容發佈在我的問題中。 – wewa

+1

缺少Probabky依賴關係。你在'workspace/.metadata/log'中看到什麼了嗎?已安裝插件的內容如何,​​是否完成? – rlegendi

回答

2

我自己找到了解決方案。您需要將您在項目中使用的jar添加到您的構建配置中(請參閱附圖)。

Build Configuration