【问题标题】:Vaadin Context Menu Add-on ErrorVaadin 上下文菜单加载项错误
【发布时间】:2014-10-15 02:19:43
【问题描述】:

我现在尝试让它工作 4 小时 - 问题是 Vaadin 在我实施它的方式上向我显示了一个错误:

Widgetset com.vaadin.DefaultWidgetSet' 不包含 org.vaadin.peter.contextmenu.ContextMenu 的实现。检查其组件连接器的@Connect 映射、widgetsets GWT 模块描述文件并重新编译您的widgetset。如果您已经下载了 vaadin 插件包,您可能需要参考插件说明。

我已经尝试重新编译它 - 编译时没有错误。 我使用 Vaadin 7 和插件版本 4.4.0

https://vaadin.com/directory#!addon/69

有什么建议吗?

【问题讨论】:

  • 如何编译您的小部件集?你能在编译器日志中看到提到的插件吗?
  • 我按下“编译小部件集”,是的,我可以看到它。
  • 那你还没有配置widgetset?例如vaadin.com/book/vaadin7/-/page/addons.maven.htmlEnabling the Widget Set in the UI
  • 我没有计划怎么做这个..不知道小部件的包装。你能写一个答案吗?
  • 至少 intellij 会自动完成 gwt 包。不确定其他IDE。但是在插件的 jar 中找到 xml 应该不难。

标签: java contextmenu vaadin add-on


【解决方案1】:

如果您使用 vaadin-archetype-application 创建项目,则 pom.xml 包含编译小部件集所需的所有声明。小部件集编译发生在标准 Maven 构建阶段,例如带有包或安装目标。

$ mvn package

用于 Maven 的 Vaadin 插件会尽量避免重新编译小部件集,除非必要,这有时意味着即使它应该编译它也没有被编译。运行 clean 目标通常会有所帮助,但会导致完全重新编译。您可以通过运行 vaadin:compile 目标手动编译小部件集。

$ mvn vaadin:compile

请注意,这不会通过从类路径中搜索新的小部件集来更新项目小部件集。例如,如果您添加或删除附加组件,则必须对其进行更新。您可以通过在项目目录中运行 vaadin:update-widgetset 目标来做到这一点。

$ mvn vaadin:update-widgetset

不要介意“错误”标签,

它们只是 Vaadin Plugin for Maven 的一个问题。 运行更新后,您需要运行 vaadin:compile 目标来实际编译小部件集。

在 UI 中启用小部件集 如果您之前在项目中使用过默认小部件集,则需要在 web.xml 部署描述符中启用项目小部件集。编辑 src/main/webapp/WEB-INF/web.xml 文件并为 servlet 添加或修改 widgetset 参数,如下所示

<servlet>
  ...      
<init-param>
            <description>Context Menue</description>
            <param-name>contextMenue</param-name>
            <param-value>org.vaadin.peter.contextmenu.ContextmenuWidgetset</param-value>
        </init-param>
</servlet>

【讨论】:

  • 别忘了cleanmvn clean package
猜你喜欢
  • 1970-01-01
  • 2017-08-22
  • 1970-01-01
  • 1970-01-01
  • 2014-06-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-24
相关资源
最近更新 更多