1、首先到www.apache.org中下载maven,得到一个apache-maven-3.1.0-bin.zip的压缩包。

2、将此压缩包解压,这里解压到D:\docs中,然后找到maven的bin目录(D:\docs\apache-maven-3.1.0\bin),将此目录配置到环境变量path中,如图:

3、打开cmd,输入mvn -version,可以查看maven对应版本号,说明maven已经配置成功,如图:

4、新建立一个文件夹,这里为:D:\docs\examples\maven\01,在此文件夹中建立一个pom.xml文件,编写文件的内容如下:

 <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.lq.wangzhen.hello</groupId>
<artifactId>hello-first</artifactId>
<version>SNAPSHOT</version>
</project> 

5、同时我们在与pom.xml同级目录下(即D:\docs\examples\maven\01下)建立一个类,此类要放到src/main/java下,即在D:\docs\examples\maven\01\src\main\java下,在此文件夹下建立一个Hello.java的类,代码如下:

 package com.lq.wangzhen.hello;

 public class Hello{
public String sayHello(String name){
return "Hello:"+name;
}
public static void main(String args[]){
System.out.println("Hello World!");
}
}

然后在D:\docs\examples\maven\01\src\main\java中建立此类对应的包,即com.lq.wangzhen.hello,将此类剪切到此包中(即:D:\docs\examples\maven\01\src\main\java\com\lq\wangzhen\hello下)。

6、准备好以上的东西以后,我们就可以打开cmd,进入到pom.xml所在的文件夹,输入mvc compile命令即可,如果是第一次执行此命令的话会从网上下载所需要的类库,如下:

执行完以上的命令之后就会在pom.xml所在文件夹下生成一个target的文件夹,我们可以在此文件夹中找到已经被编译过的Hello.java文件,就是我们的Hello.class文件。

当我们第一次执行完mvn compile命令以后,会在我们当前用户的文件夹下生成一个.m2的文件夹,里面存放的事就我们所使用到的类库,我们也可以通过maven中conf下的settings.xml中配置本地的类库。如下:

   <localRepository>C:/Users/Administrator.PC-20130311YCEK/.m2/repository</localRepository>

7、我们也可以在此项目中编写测试类,测试类放在src目录下的test/java中,即:D:\docs\examples\maven\01\src\test\java,这里新建TestHello.java类,放入到:com.lq.wangzhen.hello包下:

 package com.lq.wangzhen.hello;

 import org.junit.*;
import static junit.framework.Assert.*; public class TestHello{
@Test
public void test(){
Hello h = new Hello();
assertEquals(h.sayHello("zs"),"Hello:zs");
}
}

然后打开cmd,进入到pom.xml所在文件夹,输入mvn test的命令,也会从网上下载对应的依赖包,同时也报出了以下的错误:

这是因为我们在此测试类中用到了junit框架,而我们没有此jar包,所以只需要在pom.xml加入对junit的依赖即可:

 <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.lq.wangzhen.hello</groupId>
<artifactId>hello-first</artifactId>
<version>SNAPSHOT</version> <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.0</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>

然后再输入mvn test进行测试,如下:

这时我们回到之前生成的target文件夹下,可以发现其中不仅生成了test-classes,还生成了对应的测试报告:surefire-reports。

8、执行完以上的命令以后,我们再执行mvn clean即可以把生成的target文件夹删除。

9、我们也可以执行mvn clean package命令,执行完成以后我们可以发现,maven自动的帮我们完成了编译、测试、打包等过程。

10、我们还可以执行mvn clean install命令,此时就会把当前的项目加载到仓库,其他项目在使用时只需要加入依赖即可。

【Maven实战】Maven开发环境的搭建和案例展示的更多相关文章

  1. Idea开发环境中搭建Maven并且使用Maven打包部署程序

    1.配置Maven的环境变量 a.首先我们去maven官网下载Maven程序,解压到安装目录,如图所示: b.配置M2_HOME的环境变量,然后将该变量添加到Path中 备注:必须要有JAVA_HOM ...

  2. 转】[1.0.2] 详解基于maven管理-scala开发的spark项目开发环境的搭建与测试

    场景 好的,假设项目数据调研与需求分析已接近尾声,马上进入Coding阶段了,辣么在Coding之前需要干马呢?是的,“统一开发工具.开发环境的搭建与本地测试.测试环境的搭建与测试” - 本文详细记录 ...

  3. Java Web 开发环境快速搭建

    Java Web 开发环境快速搭建 在因某种原因更换开发设备后,可依据此文快速搭建开发环境,恢复工作环境. Java开发环境: Windows 10 (64-bit) Oralce JDK Eclip ...

  4. Java开发环境的搭建01——Eclipse篇(Windows)

    搭建环境是换项目组和新入职的开发入项都必须面临的一件事情,搭搭环境,一天就过去了...本着不浪费生命不做重复的无用功,在这里写写环境搭建的基本功,这篇是介绍Java环境搭建,常见的开发IDE无非就两种 ...

  5. JAVA 基础开发环境 vscode 搭建 Windows下VSCode编译运行简单java

    JAVA 基础开发环境 vscode 搭建 来源 https://www.cnblogs.com/freewsf/p/7744728.html 对于使用 Visual Studio Code 的 Ja ...

  6. SpringDataJPA开发环境的搭建

    这里简单的介绍一下使用maven工程创建SpringDataJPA的开发环境的搭建 首先引入依赖 <dependencies> <!-- junit单元测试 --> <d ...

  7. activiti学习1:开发环境的搭建

    activiti学习1:开发环境的搭建 本文中使用maven+eclipse搭建activiti-5.14的开发环境 一.创建maven工程 创建一个普通的java工程,pom文件的内容如下 < ...

  8. Cocos发展Visual Studio下一个libcurl图书馆开发环境的搭建

    我们解释win32在Visual Studio下一个libcurl图书馆开发环境的搭建.Cocos2d-x发动机实际上与Win32在访问libcurl库.Cocos2d-x 3.x在libcurl库文 ...

  9. VueJs(2)---VueJs开发环境的搭建和讲解index.html如何被渲染

    VueJs开发环境的搭建和讲解初始框架 有关如何搭建vue.js框架我这看了一篇文章,自己也根据它进行搭建环境. 文章地址:vue.js2.0实战(1):搭建开发环境及构建项目 接下来对初始的框架进行 ...

随机推荐

  1. Java中基本数据类型和包装器类型的关系

    在程序设计中经常用到一系列的数据类型,在Java中也一样包含八中数据类型,这八种数据类型又各自对应一种包装器类型.如下表: 基本类型 包装器类型 boolean Boolean char Charac ...

  2. 安卓ListView操作的两种方法

    举例做一个微信的中间部分(好友消息等信息通知) 第一种:BaseAdapter() package com.example.wx; import java.util.ArrayList;import ...

  3. lesson10:hashmap变慢原因分析

    下面的英文描述了String.hashCode()方法,在特定情况下,返回值为0的问题: Java offers the HashMap and Hashtable classes, which us ...

  4. ASP.NET中生成rss.xml

    本文转载:http://www.afuhao.com/article_articleId-177.shtml RSS格式的xml文件的格式,可以考虑用nvelocity模板引擎. 北风网rss视频:h ...

  5. 删除表中多余的重复记录(多个字段),只留有rowid最小的记录

    假如表Users,其中ID为自增长. ID,Name,Sex 1 张三,男 2 张三,男 3 李四,女 4 李四,女 5 王五,男 --查找出最小行号ID的重复记录 select Name,Sex,C ...

  6. 当在类中的 Parcelable 接口使用 ArrayList < customObject > android 系统: nullPointerException

    我想使调用音乐使用 parcelable,所以我可以访问两个不同的活动中的音乐的实例的类.我不想使用可序列化的速度的目的.当我尝试将它使用传递时,我总是收到 nullPointerException: ...

  7. [Javascrip] Logging Timing Data to the Console

    Learn to use console.time with console.timeEnd to get accurate timings of operations in javascript. ...

  8. PHP安全编程:跨站请求伪造CSRF的防御(转)

    跨站请求伪造(CSRF)是一种允许攻击者通过受害者发送任意HTTP请求的一类攻击方法.此处所指的受害者是一个不知情的同谋,所有的伪造请求都由他发起,而不是攻击者.这样,很你就很难确定哪些请求是属于跨站 ...

  9. 使用Tcl脚本分配FPGA管脚

    自己主动生成Tcl文件 Project -> Generate Tcl File for Project... 弹出例如以下对话框.设置脚本路径. 编辑引脚 使用set_location_ass ...

  10. android-个性化进度条

    1.案例效果图 2.准备素材                                progress1.png(78*78)              progress2.png(78*78) ...