1

我正在尝试在我的应用程序中使用添加的迷你图。但是,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'

但是,我已经验证了 widgetset 确实在我的项目的 pom 中声明为依赖项,并且我还验证了它出现在 eclipse IDE 中的“Maven Dependencies”库图标下。

此外,每当我尝试重新编译我的小部件集时,在显示上述错误后,我可以看到我原来的 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),我真的不明白我在这里做错了什么。

4

1 回答 1

6

Vaadin Eclipse 插件管理您的 gwt.xml,这就是如果您从类路径中添加/删除附加组件,它会被修改的原因。基本上这意味着如果在 Eclipse 中工作,您不必手动修改 gwt.xml。此外,Eclipse 插件对 maven(或 pom 文件)一无所知,其中的任何信息都不会影响它。

您可以通过两种方式编译小部件集。首先使用 Eclipse 插件(工具栏上的按钮)或使用 maven。这听起来你正在混合这些。

最简单的设置是将所有附加 jar 放入 WEB-INF/lib 并使用 eclipse 插件编译小部件集。gwt.xml 应该会自动更新,但有时需要刷新(或 jar 删除/添加过程)才能让插件通知更改。

此外,检查项目首选项中的 Vaadin 设置是否符合您的要求。

于 2011-03-15T15:20:17.790 回答