2011-07-28 42 views
2

当我执行以下java.lang.NoClassDefFoundError:组织/阿帕奇/ BCEL /类文件/ ClassParser

ClassParser parser = new ClassParser("E:\temp\TestCasing.class"); 

我得到以下异常:

java.lang.NoClassDefFoundError: org/apache/bcel/classfile/ClassParser 
at in.ac.iiitb.krishna.classinformationretrieval.ClassInformationRetrievalView$3.widgetSelected(ClassInformationRetrievalView.java:113)  
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:240) 
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)  
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) 
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165)  
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754) 
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)  
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)  
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)  
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)  
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)  
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)  
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)  
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123) 
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)  
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:344) 
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:622)  
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577) 
at org.eclipse.equinox.launcher.Main.run(Main.java:1410) 
at org.eclipse.equinox.launcher.Main.main(Main.java:1386) 
Caused by: java.lang.ClassNotFoundException: org.apache.bcel.classfile.ClassParser 
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:513) 
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429) 
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417) 
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)  
at java.lang.ClassLoader.loadClass(Unknown Source)  ... 27 more 

我已经把BCEL-1.3.2。在构建路径中的jar也是。它仍然给我同样的例外。 相同的代码工作正常,作为独立的Java应用程序。但不能在SWT插件项目中工作。

回答

2

您需要在运行时在您的类路径中使用此jar。

+0

你是怎么做的? – Rahul

+0

我已经把它放在我的构建路径中。 – Rahul

+0

只需将jar放入你的类路径中,如果你放入构建路径,它将在构建时才可用 –

相关问题