2014-02-10 3 views
0

작업 공간을 시작할 때 실행해야하는 이클립스 플러그인을 작성했습니다 (Executing eclipse plugin automatically 참조). 그것은 Run 버튼으로 시도 할 때 완벽하게 작동합니다. 하지만 지금은 업데이트 사이트를 만들고 업데이트 관리자를 통해 플러그인을 설치했습니다. 이유는 모르겠지만 지금은 이클립스 작업 공간이 시작될 때 실행되지 않습니다.이클립스 플러그인이 실행되지 않았습니다

여기에서 문제가 될 수있는 것은 무엇입니까? 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

관련 문제