基于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 :: 我可以按照下面两个答案的EITHER中的步骤进行操作,然后获得一个可以运行的项目。我假设我是正确的添加GWT运行目标,因为在我这样做之前,运行菜单完全变灰。我相信它是灰色的,因为GWT方面的模块列表中没有列出模块。
我认为我必须创建一个新的运行/调试配置,它必须是以下之一,并且GWT有一定意义,因为vaadin基于GWT:
在我添加GWT之后,我仍然得到与我从maven原型开始时最初的错误:没有GWT模块。我不知道人们在谈论从下拉模块中挑选什么......
Update3 仍然无法让下面的任何一个解决方案工作。卡在此屏幕上,无法显示" GWT模块中的任何模块以加载"组合框仍然是灰色的。我相信这是我应该选择的下拉模块,但下面没有任何内容告诉我如何让它变为灰色(启用):
我最终设法(a)手动添加GWT方面,(b)配置它,(c)现在它将运行。这会导致运行时错误(应用程序无法在Web浏览器中打开,但很明显,它非常接近于工作。)
答案 0 :(得分: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
,目前有两个选项。
我选择运行该应用程序。在这种情况下,它会给你一个错误。
此刻似乎是a known error。您必须手动将vaadin-client-compiler.jar
添加到类路径中。
按工具栏中的Project Structure
按钮。
选择Dependencies
的{{1}}标签,然后选择添加vaadin-app
。
导航到您当地的maven存储库并找到Jars or directories...
。
在Mac OS和Linux / Unix上,可以在以下位置找到:
vaadin-client-compiler-<version>.jar
在~/.m2/repository/com/vaadin/vaadin-client-compiler/7.0.4/...
窗口中再次按Ok
和Ok
。
现在再次运行该应用程序。没有更多的错误。
现在,我不是Vaadin的专家,所以从这里你就可以自己了。
玩得开心!
答案 1 :(得分:2)
使用Vaadin插件:
新建项目,选择Java模块 - 输入项目名称和位置,然后单击下一步。
选择“Web应用程序”和“Vaadin应用程序”,选中“创建示例虚拟应用程序”并输入类名。选择一个vaadin版本。
点击完成。
请注意,生成的示例应用程序不会编译(!),因为我认为它来自Vaadin 7的测试版。
/* 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了。
祝你好运 - 你有很多东西可以解决这个问题!