我正在使用相对较新的Google云端工具插件,用于Eclipse,取代了谷歌Eclipse插件。我已将我的App Engine项目转换为新插件的环境,但现在应用程序停止工作。DataNucleus JDO和Google Cloud Tools for Eclipse
javax.jdo.JDOUserException: Persistent class \"Class
CLASSNAME does not seem to have been enhanced. You may want to rerun
the enhancer and check for errors in the output.\" has no table in the
database, but the operation requires it. Please check the specification
of the MetaData for this class.
的GPE(谷歌插件的Eclipse)有一些这方面的选择::https://developers.google.com/eclipse/docs/appengine_orm和https://developers.google.com/eclipse/docs/appengine_datanucleus
我请求使用谷歌数据存储条目的Servlet时出现以下错误。
不幸的是,在新插件中没有这个设置。我试图添加DataNucleus Plugin for Eclipse,但是当我尝试增强类时,出现错误:Error: Could not find or load main class org.datanucleus.enhancer.DataNucleusEnhancer
。
我也试过这个:https://cloud.google.com/appengine/docs/standard/java/datastore/jdo/overview-dn2#Enhancing_Data_Classes,但我没有得到如何使用这个新的插件。
我使用所有最新版本的Google Cloud(App Engine SDK 1.9.50)。
任何帮助,非常感谢!
FYI:我已经重写应用程序的整个JDO部分物化(其现在实际上由Google App Engine支持)。没有Datanucleus需要了! – bashoogzaad
关于DataNucleus Plugin for Eclipse,在Window - > Preferences - > DataNucleus中,需要添加datanucleus-core库。但是,现在我正在为我现有的App Engine项目获取java.lang.IncompatibleClassChangeError。 –
在这个问题上总共花费了16个小时后,我得出结论:DataNucleus是不可能的,必要的,但不再支持datanucleus-appengine库和Java8一起工作。看起来我必须重写我已经运行的应用程序才能使用Objectify。 –