构建简单的Maven工程很简单,这里写这篇随笔的原因是希望自己能记住几个小点。

一、安装Maven

1、下载maven:https://maven.apache.org/download.cgi

2、解压压缩包到指定路径,如E:/Java/maven。得到文件夹apache-maven-3.3.9。

3、以第二步得到的目录E:/Java/maven/apache-maven-3.3.9作为Maven的根目录,配置Maven的环境变量。注意因为maven是Java语言开发的所以需要依赖JDK,所以JDK的环境变量名必须为标准的JAVA_HOME,不然maven起不来。

4、win+R,输入cmd,打开dos终端输入mvn -version,检查maven是否配置成功。

5、现在可以直接使用maven命令构建工程了,但是这对于初学者来说未免有点复杂,我们可以把maven集成到eclipse中。

二、maven集成到eclipse中

1、一般来说,比较新的eclipse都已经集成了maven插件的。通过Window》preference查看eclipse是否集成了maven插件。

2、如果右边的菜单列表中没有maven选项,即是没有安装maven插件。那么需要手动安装。

3、手动给eclipse安装maven插件:

Help  -->  Install New Software,然后输入 HTTP 地址来安装(http://download.eclipse.org)

三、在eclipse下新建一个简单的maven项目

1、File >>new >>other....,在弹出的新建框中选择Maven>>Maven Project,然后Next。

2、勾选Create a simple project(skip archetype selection),然后Next

3、填写Group Id和Artifact Id。注意,group id一般是项目的包路径,Artifact Id一般是项目的工程名称。

4、选择项目的打包类型。

5、到这里就建立了一个简单的maven工程。

四、测试驱动开发的简单列子

测试驱动开发:是一种开发模式,或者说是一种开发流程。与传统的开发流程不同,在开发某个功能之前,先开发测试代码,然后再编写能使该测试代码通过的功能代码。总之,测试驱动是先写测试,后写功能,测试推动了功能的开发。这样的开发保证了代码的质量,确保代码能得到充分的测试。

以编写一个简单的计算器为例。

1、新建好一个maven项目后,项目的目录结构如图

2、在src/test/java目录下编写测试类TestCaculator。为了简便,首先假设我们的计算器需求是能计算加法(其他的运算暂时不考虑)。

3、编写一个加法的单元测试代码。

import static org.junit.Assert.*;

import org.junit.Test;

/**
* @author fengyu
* @time 2016年4月17日::下午1:34:47
*
*/
public class TestCaculator
{
//新建一个计算器
Caculator c = new Caculator();
//测试计算器的加法
@Test
public void testAdd(){
assertEquals(5,c.add(2,3));
}
}

  因为这时工程中还未定义一个Caculator类,所以代码中会有许多错误。

4、根据测试编写功能代码。这里注意一个技巧,包鼠标放到错误的代码上,穿件不存在的方法和类。

/**
* @author fengyu
* @filename 2016年4月17日-TestCaculator.java
* @time 下午1:34:47
* @classname TestCaculator
*/
package com.daniel.caculator; import static org.junit.Assert.assertEquals; import org.junit.Test; /**
* @author fengyu
* @time 2016年4月17日::下午1:34:47
*
*/
public class TestCaculator
{
// 新建一个计算器
Caculator c = new Caculator();
// 测试计算器的加法
@Test
public void testAdd1()
{
// 加法的计算结果正确
assertEquals( 5, c.add( 2, 3 ) );
} @Test
public void testAdd2()
{
// 加法的计算结果不正确
assertEquals( 6, c.add( 2, 3 ) );
}
}

5、运行测试类TestCaculator ,结果:

五、参考

1、http://blog.csdn.net/wode_dream/article/details/38052639

2、http://ryxxlong.iteye.com/blog/716428

3、http://blog.csdn.net/jaune161/article/details/40025861

4、http://blog.csdn.net/xsi640/article/details/29921019

构建简单的Maven工程,使用测试驱动的方式开发项目的更多相关文章

  1. idea破解版安装、配置jdk以及建立一个简单的maven工程

    idea破解版安装.配置jdk,配置jdk环境变量以及建立一个简单的maven工程 一.idea破解版以及配置文件下载 下载网址:https://pan.baidu.com/s/1yojA51X1RU ...

  2. maven入门(1-3)构建简单的maven项目

    1. 用Maven 命令创建一个简单的Maven项目 在cmd中运行如下命令: mvn archetype:generate -DgroupId=com.mycompany.app -Dartifac ...

  3. 002商城项目:maven工程的测试以及svn的使用

    我们上一篇文章搭建了maven工程,这一篇文章我们就要测试这个工程. 1: 由于这个工程还没有页面,我们要首先建立一个页面.在建立页面的jsp的过程中,我发现了一个问题,我这个eclipse由于缺少J ...

  4. 构建第一个maven工程

    一.maven介绍 Maven 是一个强大的项目管理和构建自动化工具,它通过抽象的项目对象模型和构建生命周期模型来对项目及其构建过程进行管理,Maven 最大化的消除了构建的重复,提升了构建的效率与标 ...

  5. 创建一个简单的Maven工程

    Maven的工程结构如下图所示: 大致来看,Maven的工程结构如下: 在创建maven工程时,可以通过骨架创建,也可以不通过骨架创建. 我们先用idea通过骨架创建一个Maven工程. 配置pom. ...

  6. maven之构建多模块maven工程

    (一)环境搭建 1.Maven下载   ;   http://maven.apache.org/download.cgi 第一个在Linux使用,第二个是在Windows,第三和第四是源码: 我们将下 ...

  7. 如何根据一些参数,自动生成一个简单的maven工程,然后导入Eclipse直接使用?(maven命令)

    1. 使用mvn archetype:generate命令 2. 选择archetype类型:(默认是org.apache.maven.archetypes:maven-archetype-quick ...

  8. 使用myeclipse搭建简单的maven工程

    请点击或者复制以下链接 http://opiece.me/2016/03/17/maven-and-ssmframework/

  9. 使用 Jasmine 进行测试驱动的 JavaScript 开发

    Jasmine 为 JavaScript 提供了 TDD (测试驱动开发)的框架,对于前端软件开发提供了良好的质量保证,这里对 Jasmine 的配置和使用做一个说明. 目前,Jasmine 的最新版 ...

随机推荐

  1. ios7迎来完美越狱,果粉狂欢!

    [我要]最近一则iOS7可以完美越狱的消息,可是乐坏了期待已久的果粉们.据科技博客网站Gizmodo报道,越狱专家Evasi0n团队最近攻破苹果的 iOS7系统,赶在圣诞前发布了iOS7的越狱.消息一 ...

  2. Intel Code Challenge Final Round (Div. 1 + Div. 2, Combined)D Dense Subsequence

    传送门:D Dense Subsequence 题意:输入一个m,然后输入一个字符串,从字符串中取出一些字符组成一个串,要求满足:在任意长度为m的区间内都至少有一个字符被取到,找出所有可能性中字典序最 ...

  3. mysql 定时任务

    mysql 5.1以上支持定时任务. SHOW VARIABLES LIKE 'event_scheduler';   检查是否已开启该功能 开启计划任务功能: SET GLOBAL event_sc ...

  4. Unity学习疑问记录之触屏

    当将Unity游戏运行到ios或android设备上时,桌面系统中的鼠标左键操作可以自动变为手机屏幕上的触屏操作,但鼠标操作无法实现一些特有的触屏操作,比如多点触屏. 触控对于Android移动设备来 ...

  5. 关于linux开机进入grub问题的解决方法

    用还是用ls (hd0,X)/grub命令查看每个盘里面的内容, 情况一 :如果你是在/boot/grub这个目录下找到的 grub rescue>root=(hd0,9)         gr ...

  6. How to only capute sub-matched character by grep

    File content: <a href="ceph-0.80.9-82.1.x86_64.rpm"><img src="/icons/rpm.gif ...

  7. WINDOWS下PhoneGap(Cordova)安装笔记

    1.首先下载Node.js  安装nodejs很简单直接点击安装文件下一步直至成功即可,安装notejs的同时npm也会同时安装 成功后打开notejs的命令行工具 输入“node -v”," ...

  8. 一篇文章让Oracle程序猿学会MySql【未完待续】

    一篇文章让Oracle DB学会MySql[未完待续] 随笔前言: 本篇文章是针对已经能够熟练使用Oracle数据库的DB所写的快速学会MySql,为什么敢这么说,是因为本人认为Oracle在功能性方 ...

  9. sql server 删除表及表的相关视图、存储过程、方法

    注意:进行此操作前需先备份数据库,免得删错无法恢复 1.查询 SELECT Name ,type FROM SysObjects WHERE name LIKE '%cases%' 2.拼接语句 SE ...

  10. HttpServletRequest获取请求参数

    private static String getRequestParameter(HttpServletRequest request, HttpServletResponse response) ...