gae 1.7.3更新->;java.io.InvalidClassException
我刚刚将Java GAE SDK更新为1.7.3,现在在尝试读取本地数据存储时出现异常:gae 1.7.3更新->;java.io.InvalidClassException,java,google-app-engine,google-cloud-datastore,Java,Google App Engine,Google Cloud Datastore,我刚刚将Java GAE SDK更新为1.7.3,现在在尝试读取本地数据存储时出现异常: INFO: Failed to load from the backing store, C:\Users\<user>\Documents\myproject\war\WEB-INF\appengine-generated\local_db.bin java.io.InvalidClassException: com.google.appengine.repackaged.com.google
INFO: Failed to load from the backing store,
C:\Users\<user>\Documents\myproject\war\WEB-INF\appengine-generated\local_db.bin
java.io.InvalidClassException:
com.google.appengine.repackaged.com.google.io.protocol.ProtocolMessage;
local class incompatible:
stream classdesc serialVersionUID = 2691625986599730786,
local class serialVersionUID = -3428150205257072157
at java.io.ObjectStreamClass.initNonProxy(Unknown Source)
at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.io.ObjectInputStream.readClassDesc(Unknown Source)
INFO:无法从备份存储加载,
C:\Users\\Documents\myproject\war\WEB-INF\appengine-generated\local\u db.bin
java.io.InvalidClassException:
com.google.appengine.repackaged.com.google.io.protocol.ProtocolMessage;
本地类不兼容:
stream classdesc serialVersionUID=2691625986599730786,
本地类serialVersionUID=-3428150205257072157
位于java.io.ObjectStreamClass.initNonProxy(未知源)
位于java.io.ObjectInputStream.readNonProxyDesc(未知源)
位于java.io.ObjectInputStream.readClassDesc(未知源)
这会阻止我从现有的本地数据存储中读取实体。
如果我降级到1.7.2,它会再次工作,但我希望使用最新版本运行
有人知道怎么解决这个问题吗?谢谢。如果我理解正确,您已经使用development web application server的1.7.2版创建了本地数据存储,并且正在尝试使用1.7.3版使用相同的数据(文件) 较新版本的dev-app-server可能(但不能保证)无法读取使用较早版本保存的数据 我发现存储在1.7.2 dev应用服务器上的数据不能用于1.7.3,所以这次我们都不走运
在这种情况下,您将不得不使用1.7.3重新创建数据。我认为可能会获得您的数据,但需要一些工作。如果我们在本地的两个应用程序服务器上运行您的项目:一个使用SDK 1.7.2,另一个使用较新的SDK,然后使用远程api访问旧数据并复制到新数据存储,您可以重新创建所有条目
同样,它可能会起作用,所以只有在必要时才尝试。如果您是正确的,这对live server意味着什么?我会遇到同样的问题吗?不会。不同版本的dev app server之间可能存在的数据存储文件不兼容对实时系统没有影响。这只是dev应用服务器的一个怪癖。