你还在为怎样寻找、导入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——入门篇的更多相关文章

  1. 用起来超爽的Maven——进阶篇

    以后随着使用的maven的频率增加,此文件会越来越大,也是为什么需要把默认C:\Users\Administrator\.m2 \repository目录改变为D:/OpenSources/repos ...

  2. Apache Maven 入门篇 ( 上 )

    作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法. 这个入门篇分上下两篇.本文着重动手,用 mav ...

  3. [转]Apache Maven 入门篇 ( 上 )

    原文地址:Apache Maven 入门篇 ( 上 ) 作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这 ...

  4. [转]Apache Maven 入门篇(下)

    原文地址: Apache Maven 入门篇(下) 作者:George Ma 第一篇文章大概的介绍了一下Apache Maven以及它的下载和安装,并且运行了一个简单的示例.那么在对maven有了一点 ...

  5. [Maven]Apache Maven 入门篇

    作者:George Ma 上 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法.这个入门篇分上下两篇.本文着重动手,用 ma ...

  6. 【Tools】Apache Maven 入门篇 ( 上 )

    作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法.这个入门篇分上下两篇.本文着重动手,用 mave ...

  7. Apache Maven入门篇(转)

    [上篇] 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法.这个入门篇分上下两篇.本文着重动手,用 maven 来构建运行 ...

  8. Maven 入门篇 ( 上 )

    写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法.这个入门篇分上下两篇.本文着重动手,用 maven 来构建运行 hello ...

  9. Apache Maven 入门篇

    2017-11-09注释:IntelliJ IDEA 2017.2.5 x64 等新版本会安装maven,为了有好的体验 建议在安装目录找到IntelliJ IDEA 2017.2.5\plugins ...

随机推荐

  1. swift语言的特点(相对于oc)

    1.泛型.泛型约束与扩展: 2.函数式编程: 3.值类型.引用类型: 4.枚举.关联值.元组等其他 上述为swift最大的特点 Another safety feature is that by de ...

  2. 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 ...

  3. 【转】深度分析Java的ClassLoader机制(源码级别)

    原链接 Java中的所有类,必须被装载到jvm中才能运行,这个装载工作是由jvm中的类装载器完成的,类装载器所做的工作实质是把类文件从硬盘读取到内存中, JVM在加载类的时候,都是通过ClassLoa ...

  4. 【题解】洛谷P1066 [NOIP2006TG] 2^k进制数(复杂高精+组合推导)

    洛谷P1066:https://www.luogu.org/problemnew/show/P1066 思路 挺难的一道题 也很复杂 满足题目要求的种数是两类组合数之和 r的最多位数m为 w/k(当w ...

  5. HDU1215 七夕节(模拟 数学)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1215 七夕节 Time Limit: 2000/1000 MS (Java/Others)    Me ...

  6. ES6 基础概念汇总

    let const命令 声明变量 let 声明的变量  没有变量提升的效果 1  let声明的变量只在代码块内有效 for循环的计数器 2  不存在变量提升 要在声明后使用 let bar = 2 3 ...

  7. 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 ...

  8. Autofac4.0以上的版本通过json配置文件方式实现IOC的MVC5设置

    我们知道java用到了spring来实现IOC,而我们学习的.net也有.net spring.但是.net spring现在没人维护了,进公司后发现公司使用到了autofac.但是用的是3.X的版本 ...

  9. axios基础用法

    概述: 1.axios:一个基于Promise用于浏览器和nodejs的HTTP客户端.本质是对ajax的封装. 特征: 1>从浏览器中创建XMLHttpRequest 2>从node.j ...

  10. mysql 如何监控innodb的阻塞