当我将sdk orm jar更改为v2(默认情况下包括sdk)时,我得到了一些异常信息。这是关于datanucleus-core-3.0.6.jar已经注册了bla bla ....
搜索后,我知道这是3.0.6中的错误。因此,我通过datanucleus-core-3.0.10.jar来重新设置它。
但是编译pojo Enhancer时不会成功

java.lang.RuntimeException: Unexpected exception
    at com.google.appengine.tools.enhancer.Enhancer.execute(Enhancer.java:76)
    at com.google.appengine.tools.enhancer.Enhance.<init>(Enhance.java:71)
    at com.google.appengine.tools.enhancer.Enhance.main(Enhance.java:51)
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:74)
    ... 2 more
Caused by: java.lang.NoSuchMethodError: org.datanucleus.plugin.PluginManager.<init>(Lorg/datanucleus/PersistenceConfiguration;Lorg/datanucleus/ClassLoaderResolver;)V
    at org.datanucleus.OMFContext.<init>(OMFContext.java:159)
    at org.datanucleus.enhancer.DataNucleusEnhancer.<init>(DataNucleusEnhancer.java:172)
    at org.datanucleus.enhancer.DataNucleusEnhancer.<init>(DataNucleusEnhancer.java:150)
    at org.datanucleus.enhancer.DataNucleusEnhancer.main(DataNucleusEnhancer.java:1157)
    ... 7 more


这是我在\ lib \ user \ orm中的jar文件

asm-3.3.1.jar
datanucleus-api-jdo-3.0.5.jar
datanucleus-api-jpa-3.0.6.jar
datanucleus-appengine-2.0.0-final.jar
datanucleus-core-3.0.10.jar
geronimo-jpa_2.0_spec-1.0.jar
jdo-api-3.0.jar
transaction-api-1.1.jar


我一直在寻找整天。有什么不知道有什么问题吗?

最佳答案

您在CLASSPATH中的某处具有旧版本的datanucleus-core和datanucleus-enhancer。很长时间以来,来自该堆栈跟踪的“ OMFContext”在DataNucleus中不存在。

关于java - GAE,升级datanucleus jar包后出现一些异常,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10005863/

10-12 05:03