Получение исключения в потоке main java.lang.VerifyError: class com.google.gwt.dev.HostedModeBase$ArgHandlerNoServerFlag

Я пытаюсь обновить свое приложение с GWT 2.0 до 2.7.0 и получаю исключение ниже. Я использую ниже упомянутые банки. В чем причина этого исключения? Есть ли какое-либо руководство или документ по миграции, на который я могу ссылаться для обновления до версии 2.7 gwt?

Exception in thread "main" java.lang.VerifyError: class com.google.gwt.dev.HostedModeBase$ArgHandlerNoServerFlag overrides final method getPurpose.()Ljava/lang/String;
at java.lang.ClassLoader.defineClass1(Native Method)

Используемые банки:

gwt-пользователь-2.7.0.jar

получить-dev-2.7.0.jar

gwt-сервлет-2.7.0.jar

gwt-dev-windows.jar

gwtext.jar


person user3244519    schedule 16.05.2015    source источник


Ответы (1)


gwt-dev-windows.jar — это старая зависимость от GWT до 2.0 (вы уже должны были удалить ее при обновлении до 2.0 некоторое время назад), и здесь она конфликтует с более новой gwt-dev-2.7.0.jar.

Кстати, если вы не хотите продолжать использовать «классический DevMode», вам также понадобится gwt-codeserver-2.7.0.jar.

И последнее, но не менее важное: вам, вероятно, также придется обновить свою зависимость GWT-Ext.

person Thomas Broyer    schedule 16.05.2015
comment
Спасибо за вашу помощь. Я удалил gwt-dev-windows.jar и добавил gwt-codeserver-2.7.0.jar, но получаю исключение ClassNotFoundException: com.google.gwt.dev.GWTShell Exception. - person user3244519; 16.05.2015
comment
Да, в самом деле; в GWT 1.6 GWTShell устарел в пользу HostedMode, а в версии 2.0 HostedMode устарел в пользу DevMode. С тех пор эти старые точки входа были удалены. Так же, как вы должны были удалить gwt-dev-windows.jar при обновлении до 2.0 некоторое время назад, вы также должны были переключиться на DevMode. - person Thomas Broyer; 16.05.2015