开发环境

  • MyEclipse 2014
  • JDK 1.8
  • Maven 3.2.1

1.什么是Maven?

Maven是一个项目管理工具,主要用于项目构建,依赖管理,项目信息管理。

2.下载及安装

  • 下载最新版 Maven:apache-maven-3.2.1-bin.zip。官网下载:http://maven.apache.org/download.cgi.
  • 解压文件:
  • 配置环境变量(需要先配置好%JAVA_HOME%环境变量):
  • 查看是否配置成功:
  • 其他配置:settings.xml(后面讲到)
    • %MAVEN_HOME%/conf下的settings.xml,该配置文件针对系统所有用户:
    • 系统当前用户目录下.m2下的settings.xml,针对当前用户。默认没有,可自行拷贝:

3.Maven项目文件结构相关约定

  • src/main/java - 存放项目.java文件;
  • src/main/resources - 存放项目资源文件;
  • src/test/java - 存放测试类.java文件;
  • src/test/resources - 存放测试资源文件;
  • target - 项目输出目录;
  • pom.xml - Maven核心文件(Project Object Model);

4.使用MyEclipse创建Maven项目

  • MyEclipse提供了Maven插件,在Installations中添加我们刚才下载配置的Maven即可。Eclipse可自行安装m2eclipse插件。
  • 1.新建一个 Maven Project:
  • 2.选择 workbench Location:
  • 3.选择 Maven Archetype(项目骨架),这里我们选择 maven-archetype-webapp:
  • 4.设置 Maven 相关参数,Group Id,Artifact Id,Version,Package。它们共同组成 Maven 的坐标:

5.后续相关配置

  • 1.项目创建成功之后,我们看到 MyEclipse 默认只为我们创建了 src/main/resources,打开项目属性 - Java Build Path - Source 一栏,可看到 src/main/java和src/test/java 显示 missing:

    打开 Libraries,编辑 JRE 环境,选择自己安装的JDK:


    这时,src/main/java和src/test/java 已经出来了,再自行添加 src/test/resources 目录:
  • 2.接下来,设置 Project Facets。选择 Java 1.7 版本和 Dynamic Web Module 3.1 版本:
  • 3.设置项目输出目录如下:
  • 4.设置部署打包结构如下,删除测试相关目录:

6.pom.xml文件,添加相关 jar包依赖

  • 1.打开 pom.xml文件,我们看到 Maven已经为我们添加了JUnit3.8.1 的依赖,这里我们改成 JUnit 4.11,同时添加 Servlet-api 的依赖包(原谅我的强迫症,测试喜欢用最新版本jar包):
  • 2.保存之后,自动为我们添加了相关jar包。这时最开始缺少 servlet-api 相关jar包的错误已经不见了:

7.构建及部署项目

  • 1.右键 pom.xml - Run As - Maven -install:
  • 2.来到target文件夹下,我们看到生成了项目的部署文件:
  • 3.部署项目到Tomcat应用服务器,访问项目:

Maven 系列 一 :Maven 快速入门及简单使用【转】的更多相关文章

  1. ElasticSearch实战系列八: Filebeat快速入门和使用---图文详解

    前言 本文主要介绍的是ELK日志系统中的Filebeat快速入门教程. ELK介绍 ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是 ...

  2. Gradle学习系列之一——Gradle快速入门

    这是一个关于Gradle的学习系列,其中包含以下文章: Gradle快速入门 创建Task的多种方法 读懂Gradle语法 增量式构建 自定义Property 使用java Plugin 依赖管理 构 ...

  3. Gradle学习系列之一——Gradle快速入门(转)

    这是一个关于Gradle的学习系列,其中包含以下文章: Gradle快速入门 创建Task的多种方法 读懂Gradle语法 增量式构建 自定义Property 使用java Plugin 依赖管理 构 ...

  4. Spring Boot【快速入门】简单案例

    Spring Boot[快速入门]   Spring Boot 概述 Build Anything with Spring Boot:Spring Boot is the starting point ...

  5. SPRING-BOOT系列之SpringBoot快速入门

    今天 , 正式来介绍SpringBoot快速入门 : 可以去如类似 https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/refer ...

  6. ElasticSearch实战系列六: Logstash快速入门和实战

    前言 本文主要介绍的是ELK日志系统中的Logstash快速入门和实战 ELK介绍 ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是 ...

  7. 我给女朋友讲编程html系列(1) -- Html快速入门

    Html是一门编写网页的语言. 在我学习Html的时候,网上的很多朋友说,直接使用[记事本]编写就行了,最后保存为后缀名为 .html 的文件. 不过,我建议你用[Nodepad++]来编写网页,用这 ...

  8. SPRING-BOOT系列之Spring4快速入门

    上节 : spring boot简介 接着上章节的spring boot简介,我们会发现boot是基于spring的,其中最重要的就是spring容器了.那么本章着重介绍spring容器装配自定义be ...

  9. maven系列之一maven安装和与IDE集成

    第一部分:maven的基本信息和安装,配置  maven是一个项目构建和管理的工具,提供了帮助管理 构建.文档.报告.依赖.scms.发布.分发的方法.可以方便的编译代码.进行依赖管理.管理二进制库等 ...

  10. 菜鸟系列k8s——k8s快速入门(1)

    k8s快速入门 1.快速创建k8s集群 参考网站:https://kubernetes.io/docs/tutorials/kubernetes-basics 点击教程菜单 1. Create a C ...

随机推荐

  1. python_way day13 paramiko

    paramiko 一.安装 pip3 install paramiko 二.使用 1.SSHClient 用于连接远程服务器并执行基本命令 import paramiko # 创建SSH对象 ssh ...

  2. ubuntu下配置hosts

    由于Chrome浏览器访问问题,需要配置hosts. 在Ubuntu系统下,需要修改/etc/hosts文件,修改完之后要重启网络.具体过程如下:1.修改hostssudo vi /etc/hosts ...

  3. Log4j XML 配置

    Xml代码 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configurat ...

  4. iOS - OC Block 代码块

    前言 Block 是一段预先准备好的代码,可以在需要的时候执行,可以当作参数传递.Block 可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值.Block 是 C 语言的,类似于一个 ...

  5. Win7_关闭休眠文件hiberfil.sys

    1. C盘根目录下 hiberfil.sys 占用好几G空间,直接删 删不掉,也不推荐直接删. 2. 2.1.命令窗口中输入 powercfg -h off,即可关闭休眠功能,同时 Hiberfil. ...

  6. Windows_CMD_临时环境变量

    1. 以 path 为例: 1.1.查看: set path 1.2.添加: set path=%path%;"要添加的路径" 附录:下面贴上一些常用的环境变量及作用 %ALLUS ...

  7. mtk lcm驱动加载流程 (转载)

    平台:mt6582 + Android 4.4 前面就说过,在mtk代码中支持屏是可兼容的,通过调用驱动中的compare_id函数来匹配驱动和屏,这里来细看一下代码. 1. LK部分(mediate ...

  8. Java中List Set Map 是否有序等总结

    1.Collection List Set Map 区别记忆 这些都代表了Java中的集合,这里主要从其元素是否有序,是否可重复来进行区别记忆,以便恰当地使用,当然还存在同步方面的差异,见上一篇相关文 ...

  9. bzoj3529(莫比乌斯反演+离线+树状数组)

    在你以为理解mobus的时候,苦苦想通过化简公式来降低复杂度时,这题又打了我一巴掌. 看来我并没有理解到acmicpc比赛的宗旨啊. 这么多次查询可以考虑离线操作,使用树状数组单点更新. /***** ...

  10. latex输入希腊字母

    \alpha产生字符α;\beta产生字符β:\gamma产生字符γ:\delta产生字符δ;\epsilon产生字符ε; \zeta产生字符ζ:\eta产生字符η;\theta产生字符9; \iot ...