我很难让 Datanucleus 2 使用 Datanucleus 插件在 Eclipse 中增强 GAE 1.7.0 上的类正常工作。当我按照此处的手动步骤操作时,这在旧版本的 GAE 中运行良好:
http://www.datanucleus.org/products/accessplatform/guides/eclipse/index.html
但是自从升级以来,GAE 现在包含了这些库(看起来像是它们的较新版本),而且 GAE 有一个可以设置的新“增强器”标志。我无论如何都找不到在 Eclipse 中设置这个标志。当我想要 V2 库和 Datanucleus 根据此错误发生冲突时,GAE 似乎仍然包含 v1 库:
Jul 1, 2012 5:59:55 PM org.datanucleus.enhancer.DataNucleusEnhancer <init>
INFO: DataNucleus Enhancer : Using ClassEnhancer "ASM" for API "JPA"
Exception in thread "main" java.lang.NoSuchFieldError: NUCLEUS_CONTEXT_LOADER
at org.datanucleus.NucleusContext.<clinit>(NucleusContext.java:73)
at org.datanucleus.enhancer.DataNucleusEnhancer.<init>(DataNucleusEnhancer.java:171)
at org.datanucleus.enhancer.DataNucleusEnhancer.main(DataNucleusEnhancer.java:1265)
我尝试了很多不同的东西。我已经尝试使用所有默认值。我尝试将 v2 库添加到 Datanucleus 运行时类路径条目。我已经尝试在 src 和 libs 中删除 GAE 1.7.0 SDK 中的 v1 库。但不知何故,GAE 仍在停止(或试图停止 V1 库。我什至尝试过按照上面链接指定的手动设置配置的旧方法。这有点令人沮丧,因为我现在好像在我根本无法使用这些库的情况下。至少对于旧版本的 GAE,我可以手动将其设置为工作。现在似乎没有任何工作。有什么建议吗?