【Maven实战】Maven开发环境的搭建和案例展示
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开发环境的搭建和案例展示的更多相关文章
- Idea开发环境中搭建Maven并且使用Maven打包部署程序
1.配置Maven的环境变量 a.首先我们去maven官网下载Maven程序,解压到安装目录,如图所示: b.配置M2_HOME的环境变量,然后将该变量添加到Path中 备注:必须要有JAVA_HOM ...
- 转】[1.0.2] 详解基于maven管理-scala开发的spark项目开发环境的搭建与测试
场景 好的,假设项目数据调研与需求分析已接近尾声,马上进入Coding阶段了,辣么在Coding之前需要干马呢?是的,“统一开发工具.开发环境的搭建与本地测试.测试环境的搭建与测试” - 本文详细记录 ...
- Java Web 开发环境快速搭建
Java Web 开发环境快速搭建 在因某种原因更换开发设备后,可依据此文快速搭建开发环境,恢复工作环境. Java开发环境: Windows 10 (64-bit) Oralce JDK Eclip ...
- Java开发环境的搭建01——Eclipse篇(Windows)
搭建环境是换项目组和新入职的开发入项都必须面临的一件事情,搭搭环境,一天就过去了...本着不浪费生命不做重复的无用功,在这里写写环境搭建的基本功,这篇是介绍Java环境搭建,常见的开发IDE无非就两种 ...
- JAVA 基础开发环境 vscode 搭建 Windows下VSCode编译运行简单java
JAVA 基础开发环境 vscode 搭建 来源 https://www.cnblogs.com/freewsf/p/7744728.html 对于使用 Visual Studio Code 的 Ja ...
- SpringDataJPA开发环境的搭建
这里简单的介绍一下使用maven工程创建SpringDataJPA的开发环境的搭建 首先引入依赖 <dependencies> <!-- junit单元测试 --> <d ...
- activiti学习1:开发环境的搭建
activiti学习1:开发环境的搭建 本文中使用maven+eclipse搭建activiti-5.14的开发环境 一.创建maven工程 创建一个普通的java工程,pom文件的内容如下 < ...
- Cocos发展Visual Studio下一个libcurl图书馆开发环境的搭建
我们解释win32在Visual Studio下一个libcurl图书馆开发环境的搭建.Cocos2d-x发动机实际上与Win32在访问libcurl库.Cocos2d-x 3.x在libcurl库文 ...
- VueJs(2)---VueJs开发环境的搭建和讲解index.html如何被渲染
VueJs开发环境的搭建和讲解初始框架 有关如何搭建vue.js框架我这看了一篇文章,自己也根据它进行搭建环境. 文章地址:vue.js2.0实战(1):搭建开发环境及构建项目 接下来对初始的框架进行 ...
随机推荐
- BASH_SOURCE 用法
参考 bash少见的用法 http://blog.csdn.net/wonderisland/article/details/22892759. 原有项目里自带的启动脚本用到了bash_source获 ...
- EntityFramework 使用Linq处理内连接(inner join)、外链接(left/right outer join)、多表查询
场景:在实际的项目中使用EntityFramework都会遇到使用Ef处理连接查询的问题,这里做一些小例子如何通过Linq语法处理内连接(inner join).外连接(left/right oute ...
- 【.NET调用Python脚本】C#调用python requests类库报错 'module' object has no attribute '_getframe' - IronPython 2.7
最近在开发微信公众号,有一个自定义消息回复的需求 比如用户:麻烦帮我查询一下北京的天气? 系统回复:北京天气,晴,-℃... 这时候需要根据关键字[北京][天气],分词匹配需要执行的操作,然后去调用天 ...
- padding与margin的差别
之前一直没有搞懂android:padding和android:layout_margin的差别,事实上概念非常easy,padding是站在父view的角度描写叙述问题,它规定它里面的内容必须与这个 ...
- IDL绘制黑体辐射曲线
普朗克定律是热红外遥感中常常使用的三大定律之一,描述了黑体辐射能量的情况.绝对黑体的辐射光谱对于研究一切物体的辐射规律具有根本的意义.1900年普朗克引进量子概念,将辐射当做不连续的量子发射,成功地从 ...
- 7-ajax的同步和异步?
同步和异步统一根据send()执行的位置来实现分割逻辑同步:1.send()后统一不会被执行,直到http事务完成之后才会之后后续逻辑.2.堵塞send()方法的逻辑.异步:1.send()后面照样执 ...
- 5JS树形结构菜单和jQuery版
第一版JS版HTML: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> & ...
- Android开源项目 Universal imageloader 源码研究之项目框架
Universal imageloader 的代码并不复杂 重点是缓存,线程池任务 下面都用UML图进行了绘制 基本使用流程就是 初始化配置,设置Options参数,最后Dispaly提交下载 pub ...
- [转]Delphi 控件属性和事件
常用[属性] Action:该属性是与组件关联的行为,允许应用程序集中响应用户命令 Anchors:与组件连接的窗体的位置点 Align:确定组件的对齐方式 AutoSize:确定组件是否自动调整其大 ...
- 重拾C++ 基础知识总结(二)
1.标准库string类型: 用户程序要使用string类型对象,必须包含相关头文件 #include <string> 字符串字面值与标准库string类型不是同一种类型,字符串字面值是 ...