用起来超爽的Maven——入门篇
你还在为怎样寻找、导入SSH相关依赖包纠结吗?
你还在为没有安装IDE开发工具不能编译、部署、运行项目而纠结吗?
你还在为公司项目目录结构怎样规范而纠结吗?
亲爱的纠结哥,只要你使用了Maven,一切不爽都会变得很爽了,就像春风拂过,迎刃而解,把不爽,变成爽,爽,爽。

一、下载安装:
下载地址:
http://maven.apache.org/download.cgi
当前最新版本:
http://apache.fayea.com/maven/maven-3/3.2.5/binaries/apache-maven-3.2.5-bin.zip
下载apache-maven-3.2.5-bin.zip之后解压缩到非中文、空格的目录;
比如D:\Java\apache-maven-3.2.5
以Window操作系统演示,我的电脑右键点击属性,高级系统设置
第一步.使用前必须先安装好JDK,配置2个环境变量

第二步.在把上面的2个环境变量配置到PATH的最前面
%JAVA_HOME%\BIN;%MAVEN_HOME%\BIN;
%%表示引用前面配置的环境变量的值,这样的好处是以后升级JDK或者MAVEN就直接修改系统变量里面的值,PATH里面不用修改。

第三步.打开cmd
输入mvn -v
如果出现如下信息,表示安装成功,没有出现请检查上面环境变量的配置,或者给我微博发送消息。

二、手动建立第一个Maven项目
目的:熟悉maven约定的目录结构
第一步. 比如在d盘根目录,建立hello文件夹作为项目,同时建立Maven约定的目录结构
hello
--src
-----main
----------java
-----test
----------java
--pom.xml
第二步:在项目hello根目录建立pom.xml
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>cn.itsource.maven</groupId>
<artifactId>hello</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>hello</name>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
第三步:在src/main/java/cn/itsource/maven目录下新建文件Hello.java
package cn.itsource.maven;
public class Hello {
public String sayHello(String name){
return "Hello "+name;
}
}
第四步:在/src/test/java/cn/itsource/maven目录下新建测试文件HelloTest.java
package cn.itsource.maven;
import org.junit.Test;
import static junit.framework.Assert.*;
public class HelloTest {
@Test
public void testHello(){
Hello hello = new Hello();
String results = hello.sayHello("World,欢迎来到源代码教育!");
assertEquals("Hello World,欢迎来到源代码教育!",results);
}
}
第五步:maven可以灰常方便使用下面命令实现项目构建,不过必须连接网络,然后maven会自动从中央仓库http://repo1.maven.org/maven2,下载相应的jar文件,从而管理java项目。
会出现如下下载信息

a)打开cmd命令行,进入hello项目根目录执行 mvn compile编译命令,查看根目录变化
b)cmd 中继续录入mvn clean清理命令,然后再次查看根目录变化
c)cmd 中录入 mvn clean compile清理编译命令, 查看根目录变化
d)cmd 中录入 mvn clean test测试命令,查看根目录变化
e)cmd 中录入 mvn clean package打包命令,查看根目录变化
f)cmd 中录入 mvn clean site生成网站命令,查看根目录变化
你还在等什么,赶快试试吧。
关注作者:

用起来超爽的Maven——入门篇的更多相关文章
- 用起来超爽的Maven——进阶篇
以后随着使用的maven的频率增加,此文件会越来越大,也是为什么需要把默认C:\Users\Administrator\.m2 \repository目录改变为D:/OpenSources/repos ...
- Apache Maven 入门篇 ( 上 )
作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法. 这个入门篇分上下两篇.本文着重动手,用 mav ...
- [转]Apache Maven 入门篇 ( 上 )
原文地址:Apache Maven 入门篇 ( 上 ) 作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这 ...
- [转]Apache Maven 入门篇(下)
原文地址: Apache Maven 入门篇(下) 作者:George Ma 第一篇文章大概的介绍了一下Apache Maven以及它的下载和安装,并且运行了一个简单的示例.那么在对maven有了一点 ...
- [Maven]Apache Maven 入门篇
作者:George Ma 上 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法.这个入门篇分上下两篇.本文着重动手,用 ma ...
- 【Tools】Apache Maven 入门篇 ( 上 )
作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法.这个入门篇分上下两篇.本文着重动手,用 mave ...
- Apache Maven入门篇(转)
[上篇] 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法.这个入门篇分上下两篇.本文着重动手,用 maven 来构建运行 ...
- Maven 入门篇 ( 上 )
写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法.这个入门篇分上下两篇.本文着重动手,用 maven 来构建运行 hello ...
- Apache Maven 入门篇
2017-11-09注释:IntelliJ IDEA 2017.2.5 x64 等新版本会安装maven,为了有好的体验 建议在安装目录找到IntelliJ IDEA 2017.2.5\plugins ...
随机推荐
- swift语言的特点(相对于oc)
1.泛型.泛型约束与扩展: 2.函数式编程: 3.值类型.引用类型: 4.枚举.关联值.元组等其他 上述为swift最大的特点 Another safety feature is that by de ...
- D - Going Home POJ - 2195 网络流
On a grid map there are n little men and n houses. In each unit time, every little man can move one ...
- 【转】深度分析Java的ClassLoader机制(源码级别)
原链接 Java中的所有类,必须被装载到jvm中才能运行,这个装载工作是由jvm中的类装载器完成的,类装载器所做的工作实质是把类文件从硬盘读取到内存中, JVM在加载类的时候,都是通过ClassLoa ...
- 【题解】洛谷P1066 [NOIP2006TG] 2^k进制数(复杂高精+组合推导)
洛谷P1066:https://www.luogu.org/problemnew/show/P1066 思路 挺难的一道题 也很复杂 满足题目要求的种数是两类组合数之和 r的最多位数m为 w/k(当w ...
- HDU1215 七夕节(模拟 数学)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1215 七夕节 Time Limit: 2000/1000 MS (Java/Others) Me ...
- ES6 基础概念汇总
let const命令 声明变量 let 声明的变量 没有变量提升的效果 1 let声明的变量只在代码块内有效 for循环的计数器 2 不存在变量提升 要在声明后使用 let bar = 2 3 ...
- CentOS 7 安装oracle 11.2.0.4 Error in invoking target 'agent nmhs' of makefile
%86时出现报错 Error in invoking target 'agent nmhs' of makefile 解决方案在makefile中添加链接libnnz11库的参数修改$ORACLE ...
- Autofac4.0以上的版本通过json配置文件方式实现IOC的MVC5设置
我们知道java用到了spring来实现IOC,而我们学习的.net也有.net spring.但是.net spring现在没人维护了,进公司后发现公司使用到了autofac.但是用的是3.X的版本 ...
- axios基础用法
概述: 1.axios:一个基于Promise用于浏览器和nodejs的HTTP客户端.本质是对ajax的封装. 特征: 1>从浏览器中创建XMLHttpRequest 2>从node.j ...
- mysql 如何监控innodb的阻塞