Как заставить компиляцию виджета в Vaadin? - PullRequest
0 голосов
/ 14 марта 2011

Я пытаюсь использовать спарклайны, добавленные в моем приложении. Однако eclipse систематически отказывается компилировать соответствующий набор виджетов, т.е. если я указываю тег inherit в моем наборе виджетов, который ссылается на набор виджетов спарклайнов следующим образом:

<inherits name="org.vaadin.artur.icepush.IcepushaddonWidgetset" />
<inherits name="org.vaadin.hezamu.googlemapwidget.widgetset.GooglemapwidgetWidgetset" />
<inherits name="org.vaadin.sparklines.SparklinesWidgetset" />
<inherits name="com.fluxtream.widgets.FluxtreamwidgetsWidgetset" />

... eclipse жалуется на следующую ошибку:

Loading inherited module 'com.fluxtream.widgets.FluxtreamwidgetsWidgetset'
   Loading inherited module 'com.fluxtream.dashboard.widgetset.FlxDashboardWidgetset'
      Loading inherited module 'org.vaadin.sparklines.SparklinesWidgetset'
         [ERROR] Unable to find 'org/vaadin/sparklines/SparklinesWidgetset.gwt.xml' on your classpath; could be a typo, or maybe you forgot to include a classpath entry for source?
      [ERROR] Line 26: Unexpected exception while processing element 'inherits'

Однако я убедился, что набор виджетов действительно был объявлен как зависимость в pom моего проекта, и я также убедился, что он отображается под значком библиотеки «Maven Dependencies» в IDE eclipse.

Кроме того, всякий раз, когда я пытаюсь перекомпилировать мой набор виджетов, и после отображения вышеупомянутой ошибки, я вижу, что мой исходный файл widgetset.gwt.xml был изменен, и в результате он будет выглядеть следующим образом:

<inherits name="org.vaadin.artur.icepush.IcepushaddonWidgetset" />
<inherits name="org.vaadin.hezamu.googlemapwidget.widgetset.GooglemapwidgetWidgetset" />

<inherits name="com.fluxtream.widgets.FluxtreamwidgetsWidgetset" />


<inherits name="com.fluxtream.dashboard.widgetset.FlxDashboardWidgetset" />

Я действительно смущен, так как не понимаю, что я делаю неправильно. Я использую другие надстройки, которые прекрасно работают (icepush и googlemap), и я действительно не понимаю, что я делаю здесь неправильно.

1 Ответ

6 голосов
/ 15 марта 2011

Плагин Vaadin Eclipse управляет вашим gwt.xml, поэтому он изменяется, если вы добавляете / удаляете надстройку из classpath.В основном это означает, что вам не нужно изменять gwt.xml вручную, если вы работаете в Eclipse.Более того, плагин Eclipse ничего не знает о maven (или файлах pom), и любая информация в них не влияет на него.

Вы можете скомпилировать набор виджетов двумя способами.Сначала с плагином Eclipse (кнопка на панели инструментов) или с maven.Это звучит так, что вы смешиваете их.

Самая простая установка - это поместить все дополнительные файлы в WEB-INF / lib и использовать плагин eclipse для компиляции набора виджетов.Файл gwt.xml должен автоматически обновляться, но иногда требуется обновление (или процедура удаления / добавления jar-файла), чтобы позволить уведомлению плагина измениться.

Кроме того, проверьте настройки Vaadin в настройках проекта, как вы хотите.

...