How do we guarantee that all the required classes have been enhanced? I am
running the latest Plugin for Eclipse, and it supposes to do it
automatically. I see an error from the enhancer log:

java.lang.RuntimeException: Unexpected exception
    at
com.google.appengine.tools.enhancer.Enhancer.execute(Enhancer.java:59)
    at com.google.appengine.tools.enhancer.Enhance.<init>(Enhance.java:60)
    at com.google.appengine.tools.enhancer.Enhance.main(Enhance.java:41)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at
com.google.appengine.tools.enhancer.Enhancer.execute(Enhancer.java:57)
    ... 2 more
Caused by: java.lang.NoClassDefFoundError:
com/google/appengine/repackaged/org/joda/time/Duration
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
    at java.lang.Class.getDeclaredMethods(Class.java:1791)
    at
org.datanucleus.metadata.annotations.AbstractAnnotationReader.getJavaBeanAccessorAnnotationsForClass(AbstractAnnotationReader.java:238)
    at
org.datanucleus.metadata.annotations.AbstractAnnotationReader.getMetaDataForClass(AbstractAnnotationReader.java:128)
    at
org.datanucleus.metadata.annotations.AnnotationManagerImpl.getMetaDataForClass(AnnotationManagerImpl.java:136)
    at
org.datanucleus.metadata.MetaDataManager.loadAnnotationsForClass(MetaDataManager.java:2278)
    at
org.datanucleus.metadata.MetaDataManager.loadClasses(MetaDataManager.java:385)
    at
org.datanucleus.enhancer.DataNucleusEnhancer.getFileMetadataForInput(DataNucleusEnhancer.java:743)
    at
org.datanucleus.enhancer.DataNucleusEnhancer.enhance(DataNucleusEnhancer.java:545)
    at
org.datanucleus.enhancer.DataNucleusEnhancer.main(DataNucleusEnhancer.java:1252)
    ... 7 more
Caused by: java.lang.ClassNotFoundException:
com.google.appengine.repackaged.org.joda.time.Duration
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at
com.google.appengine.tools.enhancer.EnhancerLoader.loadClass(EnhancerLoader.java:89)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
    ... 18 more

It does not find the Duration class. However, I set up my classpath
correctly, and I can access the classes throug Eclipse. Where is my problem?
Any ideas?

Thanks

RSN


On Tue, Oct 27, 2009 at 12:19 PM, datanucleus <[email protected]>wrote:

>
> More than likely you haven't correctly enhanced your classes so one of
> them is out of step, since we have ample test cases that have abstract
> superclasses that are persistent (as does the JDO TCK, and JPA TCK)
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to