2011-01-10 8 views
1

Ich versuche, Datenobjekte in Java zu verwenden:java.lang.NoClassDefFoundError: org.eclipse.core.runtime.RegistryFactory

DataFactory factory = DataFactory.INSTANCE; 

in einem Java-Projekt mit:

import commonj.sdo.DataObject; 

Und ich bekomme diesen Fehler:

Exception in thread "main" java.lang.NoClassDefFoundError: org.eclipse.core.runtime.RegistryFactory 
at org.eclipse.core.internal.runtime.InternalPlatform.getRegistry(InternalPlatform.java:671) 
at org.eclipse.core.runtime.Platform.getExtensionRegistry(Platform.java:867) 
at com.ibm.wsspi.sca.extensions.ServiceProviderRegistry.loadServiceProviders(ServiceProviderRegistry.java:167) 
at com.ibm.wsspi.sca.extensions.ServiceProviderRegistry$1.run(ServiceProviderRegistry.java:88) 
at java.security.AccessController.doPrivileged(AccessController.java:202) 
at com.ibm.wsspi.sca.extensions.ServiceProviderRegistry.getServiceProviders(ServiceProviderRegistry.java:86) 
at com.ibm.wsspi.sca.extensions.ServiceProviderRegistry.getServiceProvider(ServiceProviderRegistry.java:101) 
at com.ibm.ws.sca.resources.loader.ClassLoaderRegistry.<clinit>(ClassLoaderRegistry.java:59) 
at java.lang.J9VMInternals.initializeImpl(Native Method) 
at java.lang.J9VMInternals.initialize(J9VMInternals.java:200) 
at com.ibm.ws.sca.internal.container.impl.ContainerImpl.<clinit>(ContainerImpl.java:356) 
at java.lang.J9VMInternals.initializeImpl(Native Method) 
at java.lang.J9VMInternals.initialize(J9VMInternals.java:200) 
at com.ibm.ws.sca.internal.container.impl.ContainerFactoryImpl.createContainer(ContainerFactoryImpl.java:70) 
at com.ibm.ws.sca.internal.container.Container.<clinit>(Container.java:111) 
at java.lang.J9VMInternals.initializeImpl(Native Method) 
at java.lang.J9VMInternals.initialize(J9VMInternals.java:200) 
+2

klingt wie good ol‘Classpath Ausgabe – Nishant

Antwort

0

Verwenden Sie Process Server? Ich bin ziemlich sicher, com.ibm.ws.sca.internal.container.impl.ContainerImpl ist eine Process Server-Klasse ...

+0

Ja, ich bin, aber ich löse das Problem, indem ich die Klassen den Paketen org.eclipse.emf.ecore.sdo.sample.client und org.eclipse.emf.ecore.sdo.sample.dms platziere – Pedro

0

Ich denke, die Anwendung basiert auf EMF SDO?

Anstatt einer Java-Anwendung können Sie Ihre Anwendung als Eclipse-Anwendung in Ihrer IDE ausführen, da die Anwendung den OSGi-Bündellademechanismus benötigt, um das erforderliche Bundle (z. B. org.eclipse.core.runtime) in der Laufzeit zu laden.

+0

Ich versuche, in Webphere Application Server 7.0 laufen soll der Zielserver. Brauchen wir ein spezielles Paket für WAS? – Pedro

0

Ich konfrontiert ein ähnliches Problem beim Versuch, die BOFactory-Klasse von JUnit zu instanziieren. Ich konnte es beheben, indem ich org-eclipse-equinox-registry.jar Dateien zu meinen Projekten hinzufügte, zusammen mit den SDO-JAR-Dateien.

Adding JAR files to Project

Siehe auch: Junit : Exception while creating BOFactory instance

Verwandte Themen