3

基于 Maven 原型方法的答案有效。如果 Vaadin 的 IntelliJ 向导/模板得到修复,我将根据使用内置向导更新并接受答案。*

我设法从终端窗口使用 maven 原型创建了一个新项目,然后将其导入 IntelliJ IDEA,配置了 GWT 方面,但现在当我运行它时说:

"Error running unnamed: No GWT Modules found in 'projectname'"

我承认自己是 Java、IntellIJ 和 Vaadin 的初学者,更不用说 GWT。

我还尝试使用 IntelliJ IDEA (Ultimate) 附带的本机 Vaadin 插件创建一个新的 Vaadin 项目。我正在使用 Ultimate,但这是一个试用版。

在此处输入图像描述

更新::最初我在“新建项目”窗口的可用项目模板列表中看不到任何 Vaadin 项目。那是因为我对 IntelliJ 的新项目向导中的两层新项目的想法感到困惑。现在整理出来。

Update2::我可以按照以下两个答案中的任何一个的步骤操作,并获得一个可以构建但无法运行的项目。我认为我添加 GWT 运行目标是正确的,因为在我这样做之前,运行菜单完全变灰。我相信它是灰色的,因为 GWT 方面的模块列表中没有列出任何模块。

在此处输入图像描述

我假设我必须创建一个新的运行/调试配置,该配置必须是以下之一,并且 GWT 是有意义的,因为 vaadin 基于 GWT:

在此处输入图像描述

添加 GWT 后,我仍然得到与从 maven 原型开始时最初遇到的相同的错误:没有 GWT 模块。而且我不知道人们在谈论从下拉模块中选择什么...

在此处输入图像描述

Update3 仍然无法使以下任一解决方案起作用。卡在这个屏幕上,无法让它显示“要加载的 GWT 模块”组合框中的任何模块,该组合框仍然灰显。我相信这是我应该选择的下拉模块,但下面没有任何内容告诉我如何让它不灰显(启用):

在此处输入图像描述

我最终设法 (a) 手动添加 GWT facet,(b) 配置它,并且 (c) 现在它将运行。这会导致运行时错误(该应用程序无法在 Web 浏览器中打开,但很明显它非常接近工作。)

4

2 回答 2

8

我是这样做的。

首先使用 maven artefact 创建 Vaadin 项目。

C:\dev> mvn archetype:generate -DarchetypeGroupId=com.vaadin -DarchetypeArtifactId=vaadin-archetype-application -DarchetypeVersion=7.0.4 -Dpackaging=war
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] >>> maven-archetype-plugin:2.2:generate (default-cli) @ standalone-pom >>>
[INFO]
[INFO] <<< maven-archetype-plugin:2.2:generate (default-cli) @ standalone-pom <<<
[INFO]
[INFO] --- maven-archetype-plugin:2.2:generate (default-cli) @ standalone-pom ---
[INFO] Generating project in Interactive mode
[INFO] Archetype repository missing. Using the one from [com.vaadin:vaadin-archetype-application:7.0.4] found in catalog remote
Define value for property 'groupId': : maba
Define value for property 'artifactId': : vaadin-app
Define value for property 'version':  1.0-SNAPSHOT: :
Define value for property 'package':  maba: :
Confirm properties configuration:
groupId: maba
artifactId: vaadin-app
version: 1.0-SNAPSHOT
package: maba
 Y: :
[INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Archetype: vaadin-archetype-application:7.0.4
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: groupId, Value: maba
[INFO] Parameter: artifactId, Value: vaadin-app
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: package, Value: maba
[INFO] Parameter: packageInPathFormat, Value: maba
[INFO] Parameter: package, Value: maba
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: groupId, Value: maba
[INFO] Parameter: artifactId, Value: vaadin-app
[INFO] project created from Archetype in dir: C:\dev\vaadin-app
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 28.122s
[INFO] Finished at: Fri Apr 19 08:05:49 CEST 2013
[INFO] Final Memory: 12M/152M
[INFO] ------------------------------------------------------------------------
C:\dev>

然后进入新创建的目录并运行mvn install以获取所有依赖项并重新开始。

c:\dev\vaadin-app> mvn install
[INFO] Scanning for projects...
    ...
    ------ LOTS OF STUFF GOING ON ------
    ...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3:30.373s
[INFO] Finished at: Fri Apr 19 08:13:07 CEST 2013
[INFO] Final Memory: 24M/296M
[INFO] ------------------------------------------------------------------------

现在通过指向新创建的pom.xml.

在此处输入图像描述

一切看起来都很好。在右上角的绿色框中选择配置 GWT 框架。

在此处输入图像描述

现在选择Edit Configurations...下拉菜单。

在此处输入图像描述

选择GWT Configuration.

在此处输入图像描述

给它一个名字,然后Module从下拉列表中选择。

在此处输入图像描述

现在,您现在可以选择GWT Module to load两个选项。

在此处输入图像描述

我选择运行应用程序。在这种情况下,它会给你一个错误。

在此处输入图像描述

目前这似乎是一个已知错误。您必须vaadin-client-compiler.jar手动添加到类路径。

按工具栏中的Project Structure按钮。

在此处输入图像描述

选择Dependencies选项卡vaadin-app并选择添加Jars or directories...

在此处输入图像描述

导航到本地 maven 存储库并找到vaadin-client-compiler-<version>.jar.

在 Mac OS 和 Linux/Unix 上,可以在以下位置找到: ~/.m2/repository/com/vaadin/vaadin-client-compiler/7.0.4/...

在此处输入图像描述

在窗口中再次按Ok和。OkProject Structure

现在再次运行应用程序。没有更多的错误。

在此处输入图像描述


现在,我不是 Vaadin 专家,所以从这里开始你就靠你自己了。

玩得开心!

于 2013-04-19T06:50:14.020 回答
2

使用 Vaadin 插件:

新建项目,选择 Java 模块 - 输入项目名称和位置,然后单击下一步。

选择“Web Application”和“Vaadin Application”,勾选“Create Sample vaad application”并输入类名。选择一个 vaadin 版本。

点击完成。

请注意,生成的示例应用程序不会编译(!),因为我认为它来自 Vaadin 7 的 beta 版本。

/* As Generated */
public class MySampleVaadinApplication extends UI {
  @Override
  public void init(VaadinRequest request) {
    Label label = new Label("Hello Vaadin user");
    addComponent(label);
 }
}

这就是它应该的样子

/* As it needs to be */
public class MySampleVaadinApplication extends UI {
  @Override
  public void init(VaadinRequest request) {
    Label label = new Label("Hello Vaadin user");
    setContent(label);
 }
}

请注意,用于 intellij 的 Vaadin 插件不是由 Vaadin 开发团队创建或维护的,而是由其他人创建或维护的,因此它没有保持最新状态。没有它,在 IntelliJ 中开发 Vaadin 应用程序是绝对可能的——我们做到了。

我承认自己是 Java、IntellIJ 和 Vaadin 的初学者,更不用说 GWT。

祝你好运 - 你有很多事情要搞定!

选择 Java 模块 选择

于 2013-04-18T07:38:08.533 回答