Вы не забыли передать флаг -generateJsInteropExports
компилятору (и в режим Super Dev)?Без этого GWT не будет экспортировать типы, поскольку это увеличивает размер вывода.
Кроме того, этот пакет не похож на обычную структуру, которую вы ожидаете увидеть в проекте GWT (то есть client
где-то тамв соответствии с вашим модулем GWT) - вы не забыли сослаться на этот пакет из вашего файла .gwt.xml?
Возможно также, что это должно быть public
- по умолчанию в коде JsInterop не отображаетсявидимые члены (поскольку они не являются общедоступными, поэтому не предполагается, что они потребляются в других местах).Я не уверен, относится ли это к типам или только к элементам.
Наконец, имейте в виду, что маркировка Java enum
с помощью JsType магическим образом не делает их целесообразными в JS - там будетбыть типом MyEnum в указанном пакете, и каждый из этих статических членов будет присутствовать, но они будут непрозрачными объектами JS, а не строками или чем-то еще, с чем вы можете легко взаимодействовать, если только вы не добавите другие аннотации jsinterop к методам в этомучебный класс.J2CL поддерживает @JsEnum
, который автоматически преобразует их в числовые константы, но это еще не было перенесено в GWT2.