使用Vaadin的maven archetype创建一个空Vaadin项目
所在公司要求使用这个臭屎粑粑一样的Vaadin,我也没办法。为了更好地开展工作,对得起老板发给我的工资,就算是臭屎粑粑,也要尽力给他玩儿出花样来。
Vaadin针对Eclipse和Netbeans等IDE提供了相应的插件,开发人员可以通过插件来快速创建一个基于Vaadin技术框架的项目。只是使用Vaadin插件创建的项目并不是Maven项目结构,如果我们需要Maven项目结构,则还需要自行修改项目结构以及编写pom文件。其实,Vaadin提供了更标准的构建maven结构项目的方法。下面我来给大家演示一下创建步骤。
本文基于:
- Win10
- JDK7(jdk1.7.0_79 x64)
- Maven 3.3.9
准备工作:
- 妥当安装JDK,配置JAVA_HOME系统变量,并将其bin目录加入系统全局路径中。本文使用jdk1.7.0_79 64位;
- 妥当安装Maven,配置MAVEN_HOME系统变量,并将其bin目录加入系统全局路径中。本文使用maven 3.3.9;
第一步:打开命令行控制台(cmd console),进入你想创建项目的目录
例如,需要在e:\example下创建新的Vaadin空白项目。

第二步:在cmd console中输入如下命令行
mvn archetype:generate -DarchetypeGroupId=com.vaadin -DarchetypeArtifactId=vaadin-archetype-application -DarchetypeVersion=8.0.6 -DgroupId=org.test -DartifactId=vaadin-app -Dversion=1.0-SNAPSHOT

图1
命令说明:
1、如图1中所示,是一条maven命令,archetype:generate这个goal用来通过archetype来生成新的maven结构项目。所参考的archetype的GroupId是“com.vaadin”,所参考的archetype的ArtifactId是“vaadin-archetype-application”。Vaadin有很多用于创建各式各样基于Vaadin技术框架的archetype,具体信息请参考图2。

图2
2、图1中标有红色下划线的部分是指定所参考的Vaadin archetype的版本即Vaadin的版本。Vaadin的每个大版本之间还是有很大区别的,所以一定要正确设置这个参数。Vaadin 8.x需要JDK8,由于我只安装了JDK7,所以我需要将图1中标有红色下划线的参数改为7.x(我用的是7.6.8)。
3、图1中标有黄色下划线、蓝色下划线、绿色下划线的部分为我们要创建的空白项目的信息,GroupId、ArtifactId和初始Version。这仅仅是个演示,因此这几项我就不做改动了。
第三步:输入回车,执行mvn命令

当一切执行完毕后,mvn会停在最后一步,让你输入Y进行确认新创建的空白项目相关信息。我们这里输入Y,敲回车,整个创建过程就结束了。

用资源管理器看看我们刚刚创建好的maven项目。

使用Vaadin的maven archetype创建一个空Vaadin项目的更多相关文章
- Jersey 2.x 从Maven Archetype 创建一个新项目
创建 Jersey 工程需要使用 Apache 的 Maven 软件工程和管理工具.所有的Jersey产品模块都可以在 Maven中央库 中找到.这样的话 Jersey 可以非常容易和其他基于 Mav ...
- 如何用Maven创建一个普通Java项目
一下内容包括:用Maven创建一个普通Java项目,并把该项目转成IDEA项目,导入到IDEA,最后把这个项目打包成一个jar文件. 有时候运行mvn命令失败,重复运行几次就OK了,无解(可能因为网络 ...
- php 中如何创建一个空对象
// 创建一个空对象 $obj=(object)array(); //假设这是从数据库取内容 $arr=["prod_id"=>103,"prod_name&quo ...
- PHP中怎样创建一个空对象?
如果没有声明一个对象然后就对其属性赋值会出现警告.那么我们给它创建一个空对象然后赋值就好了.PHP中创建一个空对象代码如下: 第一种方式: $empty_object = new stdClass() ...
- 写入数据到Plist文件中时,第一次要创建一个空的数组,否则写入文件失败
#pragma mark - 保存数据到本地Plist文件中 - (void)saveValidateCountWithDate:(NSString *)date count:(NSString *) ...
- 【Android Developers Training】 94. 创建一个空内容提供器(Content Provider)
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- 【Android Developers Training】 93. 创建一个空验证器
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- Scala IDEA for Eclipse里用maven来创建scala和java项目代码环境(图文详解)
这篇博客 是在Scala IDEA for Eclipse里手动创建scala代码编写环境. Scala IDE for Eclipse的下载.安装和WordCount的初步使用(本地模式和集群模式) ...
- soapui中文操作手册(一)----创建一个新的项目
1) 创建一个新的项目 点击项目,选择新建项目SOAP.这将打开一个新的SOAP项目对话框. 注意:你也可以做CTRL + N(WIN)或CMD+ N(MAC)来创建一个新的SOAP项目. 在新的SO ...
随机推荐
- MySQL子查询subquery
子查询(Subquery)是指出现在其他SQL语句内的SELECT子句. 例如: select * from t1 where col1=(select col2 from t2); 其中select ...
- VS2013诡异问题,虚方法、泛型,通通躺枪
最近在调代码,发现一个很诡异的问题,简单复原一下 创建4.0控制台项目 以下代码 class Program { static void Main(string[] args) { var item ...
- how to be an efficient man
"This Monday I was invited to do a presentation on this Friday, and today is Friday. I am going ...
- 遇到Caused by: java.lang.NoClassDefFoundError: javax/validation/ParameterNameProvider
今天在做spring和hibernate整合的时候遇到这个问题 网上搜找到这里有解决办法 http://blog.csdn.net/jueshengtianya/article/details/122 ...
- SSL评测
首先在这个网站上测试一下自己的服务器究竟处于什么水平 https://www.ssllabs.com/ssltest/
- Array【数组】和Object【对象】的特性比较
数组是JavaScript提供的一个内部对象,它是一个标准的集合,我们可以添加(push).删除(shift)里面元素,我们还可以通过for循环遍历里面的元素. 那么除了数组我们在JavaScript ...
- Python对日期进行格式化
Python对日期进行格式化 把当前时间输出为2017-04-07 19:00:00.进入python交互命令行输入: > import datetime > currtime = dat ...
- ddddddeeeessssssttttrrrrrrooooooyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
我遥远的 POI 计划啊 https://loj.ac/problems/search?keyword=POI2011 atcoder 一套 动态 DP SAM 随便看 XSY 的题 UOJ Roun ...
- .Net Core GB2312编码问题
1.今天抓取了一个网页的源代码.发现中文是乱码的,马上第一反应是编码问题..... 2.仔细一看基于WebClient写的代码,还真的是没有设置编码... /// <summary> // ...
- Node.js学习笔记(一) --- HTTP 模块、URL 模块、supervisor 工具
一.Node.js创建第一个应用 如果我们使用 PHP 来编写后端的代码时,需要 Apache 或者 Nginx 的 HTTP 服务器, 来处理客户端的请求相应.不过对 Node.js 来说,概念完全 ...