从6月12日开始,我使用DriveAPI的应用程序面临以下错误(它显示在GAE服务器日志中):
java.lang.NoSuchMethodError:com.google.api.client.json.GenericJson.set (Ljava / lang / String; Ljava / lang / Object;)Lcom / google / api / client / JSON / GenericJson; 在com.google.api.client.googleapis.auth.oauth2.GoogleClientSecrets $ Details.set(GoogleClientSecrets.java:166) 在com.google.api.client.googleapis.auth.oauth2.GoogleClientSecrets $ Details.set(GoogleClientSecrets.java:87) 在com.google.api.client.json.JsonParser.parse(JsonParser.java:357) 在com.google.api.client.json.JsonParser.parseValue(JsonParser.java:586) 在com.google.api.client.json.JsonParser.parse(JsonParser.java:350) 在com.google.api.client.json.JsonParser.parseValue(JsonParser.java:586) 在com.google.api.client.json.JsonParser.parse(JsonParser.java:289) 在com.google.api.client.json.JsonParser.parse(JsonParser.java:266) 在com.google.api.client.json.JsonParser.parseAndClose(JsonParser.java:141) 在com.google.api.client.json.JsonFactory.fromInputStream(JsonFactory.java:223) 在com.google.api.client.googleapis.auth.oauth2.GoogleClientSecrets.load(GoogleClientSecrets.java:195) 在finbudget.server.handlers.lists.cronimport.AutoImportBackend.doImport(AutoImportBackend.java:112) 在finbudget.server.handlers.lists.cronimport.AutoImportBackend.doPost(AutoImportBackend.java:76) ......
似乎这个问题伴随着1.8.1版本的AppEngine版本。在它运作良好之前......有人有同样的问题吗?什么可以解决这个问题呢?
答案 0 :(得分:0)
这是一个类路径冲突。
如果war/WEB-INF/lib
包含多个版本的DriveAPI jar,则运行时期间加载的版本错误可能会导致奇怪的问题。删除过时的罐子解决了这个问题。
(注意:我复制并格式化了原始提问者通过编辑添加到问题中的答案。我这样做是为了清理任务。)