gpt4 book ai didi

java - Datanucleus 增强器不适用于 appengine

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:28:50 25 4
gpt4 key购买 nike

目前,我正在使用 Spring、JPA、AppEngine 和 Datanucleus 开发一个用 Java 编写的 Web 应用程序。一切都运行良好,直到上周突然间什么都无法编译(甚至 SVN 上的旧版本也无法编译)。

我目前使用的版本是:

  • 数据核:3.2.5
  • 应用引擎:1.8.1
  • datanucleus-appengine: 2.1.2
  • datanucleus-jpa: 2.1.8
  • datanucleus-api-jpa: 3.3.0-m1
  • datanucleus-maven-plugin: 3.3.0-m1

连同其他一些依赖项,但我认为列表中的那些是最重要的。一切都是使用 Maven 编译的。当我运行 maven clean installmaven datanucleus:enhance 增强器崩溃时:

[ERROR] --------------------
[ERROR] Standard error from the DataNucleus tool + org.datanucleus.enhancer.DataNucleusEnhancer :
[ERROR] --------------------
[ERROR] Exception in thread "main" java.lang.NoSuchMethodError: org.datanucleus.metadata.MetaDataManager.getOMFContext()Lorg/datanucleus/OMFContext;
at org.datanucleus.jpa.metadata.JPAAnnotationReader.processClassAnnotations(JPAAnnotationReader.java:199)
at org.datanucleus.metadata.annotations.AbstractAnnotationReader.getMetaDataForClass(AbstractAnnotationReader.java:126)
at org.datanucleus.metadata.annotations.AnnotationManagerImpl.getMetaDataForClass(AnnotationManagerImpl.java:171)
at org.datanucleus.metadata.MetaDataManager.loadAnnotationsForClass(MetaDataManager.java:2757)
at org.datanucleus.metadata.MetaDataManager.loadPersistenceUnit(MetaDataManager.java:1015)
at org.datanucleus.enhancer.DataNucleusEnhancer.getFileMetadataForInput(DataNucleusEnhancer.java:796)
at org.datanucleus.enhancer.DataNucleusEnhancer.enhance(DataNucleusEnhancer.java:513)
at org.datanucleus.enhancer.DataNucleusEnhancer.main(DataNucleusEnhancer.java:1281)

[ERROR] --------------------

它还给出了一些其他错误:

Extension Point "org.datanucleus.implementation_creator" not registered, but plugin "org.datanucleus.enhancer" defined in file:/D:/FBLAAUW/.m2/repository/org/datanucleus/datanucleus-enhancer/3.1.1/datanucleus-enhancer-3.1.1.jar refers to it.

以及以下几个错误(大约 100 个)

ERROR DataNucleus.Persistence  - User-defined type mapping class "org.datanucleus.store.types.sco.simple.Collection" was not found. Please check the mapping file class specifications and your CLASSPATH. The class must be in the CLASSPATH.

我使用的是 JRE 1.7,但我也尝试过使用 JRE 1.6(同样没有用)。我的猜测是使用的版本彼此不兼容,但我不确定。有人对此有想法吗?

最佳答案

建议大家整理一下使用的jar版本。 This page说明 Google 的“datanucleus-appengine”与 DataNucleus 项目 jar 的兼容性

关于java - Datanucleus 增强器不适用于 appengine,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17466744/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com