Как устранить ошибку Gwt Compile: ссылается на отсутствующий тип "classname" в моем проекте playN? - PullRequest
0 голосов
/ 23 марта 2012

В моем проекте playN я получаю много ошибок компиляции gwt следующим образом.Кто-нибудь может дать мне подсказку об этом?это maven проекты.

[Ошибки в 'jar: file: /home/user/.m2/repository/com/google/gwt/gwt-user/2.4.0/gwt-user-2.4.0.jar! /com/google/gwt/logging/server/RemoteLoggingServiceUtil.java'

     Line 69: The method logRecordFromJson(String) from the type JsonLogRecordServerUtil refers to the missing type JSONException

  Errors in 'jar:file:/home/user/.m2/repository/com/google/gwt/gwt-user/2.4.0/gwt-user-2.4.0.jar!/com/google/gwt/logging/server/StackTraceDeobfuscator.java'

     Line 53: No source code is available for type java.util.regex.Pattern; did you forget to inherit a required module?

     Line 60: No source code is available for type java.io.File; did you forget to inherit a required module?

     Line 176: No source code is available for type java.io.InputStream; did you forget to inherit a required module?

     Line 180: No source code is available for type java.io.FileInputStream; did you forget to inherit a required module?

     Line 206: No source code is available for type java.io.BufferedReader; did you forget to inherit a required module?

     Line 207: No source code is available for type java.io.InputStreamReader; did you forget to inherit a required module?

     Line 239: No source code is available for type java.util.regex.Matcher; did you forget to inherit a required module?

  Errors in 'jar:file:/home/user/.m2/repository/com/google/gwt/gwt-user/2.4.0/gwt-user-2.4.0.jar!/com/google/gwt/place/rebind/PlaceHistoryGeneratorContext.java'

     Line 196: The method format(String, String, String) is undefined for the type String

     Line 202: The method format(String, String, String, String) is undefined for the type String

     Line 212: The method format(String, String, String, String) is undefined for the type String

     Line 285: The method getCanonicalName() is undefined for the type Class<capture#2-of ? extends PlaceTokenizer<?>>

     Line 289: The method getSimpleName() is undefined for the type Class<WithTokenizers>

     Line 290: The method getCanonicalName() is undefined for the type Class<capture#4-of ? extends PlaceTokenizer<?>>

]

Ответы [ 3 ]

2 голосов
/ 23 марта 2012

Вы используете стандартные классы Java, такие как java.util.regex.Pattern, которые не включены в GWT.См. справку по JRE-эмуляции для получения информации о том, какие стандартные классы разрешены для использования в GWT.

Редактировать: если этот код фактически встречается в простом серверном классе, вы GWT-определение модуля неверно и содержит код на стороне сервера.

2 голосов
/ 23 марта 2012

Не весь пакет java.io поддерживается GWT.

Подробнее см. Эмуляция JRE

Нет смысла эмулировать файлы / потоки в браузере.

0 голосов
/ 18 апреля 2012

Проблема заключалась в том, что я использовал некоторые неподдерживаемые классы Java.

Но было странно, что я не использовал его напрямую. Я унаследовал классы чистого проекта GWT, которые имеют те же объявления пакетов стандартного проекта Java. Поэтому, хотя я не использовал никакие классы Java, которые не поддерживает GWT, он также компилировал все коды из моего проекта Java.

[решено] Я просто сделал имена пакетов этих двух проектов разными (проект GWT, который я унаследовал, и стандартный проект Java).

Кажется, что это будет полезно для других.

...