Я получаю эту ошибку только при производстве - сервер разработки работает нормально.
Более старая версия моего приложения также отлично работает в производственной среде, но каждый раз, когда я выполняю новое развертывание, я получаю эту ошибку при доступе к своему приложению. Я попытался перекомпилировать конкретный класс, в котором возникла ошибка, и изменить код, но все равно не повезло.
Я не совсем уверен, но думаю, это как-то связано с самим процессом развертывания ... Я развертываю из Eclipse. Я использую:
Спасибо!
Обновлено:
Вот простой тестовый код:
@Override
public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException {
res.setContentType("text/plain");
res.setCharacterEncoding("UTF-8");
// this throws: java.lang.NoClassDefFoundError - only in PRODUCTION
Query.Filter filter = Query.FilterOperator.EQUAL.of("name", null);
res.getWriter().print("Hello App Engine: " + filter);
}
Это не работает в производстве, но работает на сервере разработки!
Обновление 2: Открыл проблему с Google: https://issuetracker.google.com/issues/76144204
Также предоставьте полную трассировку стека.
Вы когда-нибудь догадывались об этом? Я начал получать эту ошибку сегодня. При развертывании в AppEngine я получаю NoClassDefFoundError в com / google / appengine / api / datastore / Query $ Filter. Раньше он работал нормально, и я не думаю, что я что-то менял.
@ pldenc44: решения пока нет - обновил описание со ссылкой на проблему Google
Мне удалось обойти эту проблему, обновив свой Google Cloud SDK и перейдя на среду выполнения JAVA8. Я не уверен, какой из них сработал, но я бы сказал, что запуск "gcloud components update" - хорошее место для начала.
+1 от меня - на данный момент есть определенная проблема с развертыванием движка приложений. Благодарим также за настройку ошибки Google Issue Tracker.




Это проблема Google, которая в настоящее время изучается: https://issuetracker.google.com/issues/76144204
На данный момент исправление состоит в том, чтобы скопировать файл appengine-api-1.0-sdk-1.9.63.jar в каталог WEB-INF / lib, как описано в этом комментарии: https://issuetracker.google.com/issues/76144204#comment45
Почему голосование против ?? Класс Query.Filter не найден .. как такое может быть ???