一:什么是Maven

Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。
Maven提供了开发人员构建一个完整的生命周期框架,开发人员可以自动完成项目的基础工具建设。
 
二:Maven是干什么的
Maven是一个Apache的开源项目,主要服务于基于Java平台的项目构建、依赖管理和项目信息管理,减少开发人员对于重复代码的开发时间。
 
三:什么是自动化构建工具
构建工具是一个把源代码生成可执行应用程序的过程自动化的程序,构建包括编译、连接跟把代码打包成可用的或可执行的形式;
基本上构建的自动化是编写或使一大部分任务自动执行的一个动作。
 

3.1常用的自动构建工具
ant:一个备受赞誉的java构建工具。它以其易于使用、与平台无关、迎合如今项目自动测试和自动部署的需要,成为许多项目构建过程的重要环节。目前它已成为所有主要开源java项目采用的独立工具,并已成了事实上的标准。(注意:如果想注重了解ant推荐一本书给你们,由被称为世界上最了解ant的两个人所著《使用Ant进行Java开发》--(美)海特、(美)朗戈翰 )
maven:Maven 和 Ant 针对构建问题的两个不同方面。Ant 为 Java 技术开发项目提供跨平台构建任务。Maven 本身描述项目的高级方面,它从 Ant 借用了绝大多数构建任务;所以是两个完全不同的工具。
Gradle android:Gradle是Android开发小组于2013年推出的Android 应用首选构建系统。Gradle可以很容易地扩展构建,并插入现有的构建过程中。它提供了一套类Groovy的DSL语言,用于申明构建和创建任务,让依赖管理变得更加简单,项目管理和构建已使用(注意:如果想注重了解Gradle android推荐一本书给你们,《Gradle for Android 》--Kevin Pelgrims(凯文·贝利格里姆斯),有中文版本)

四: Maven安装与配置

4.1 下载maven安装包,解压即可使用   官网:(http://maven.apache.org/download.cgi
4.2 配置maven环境变量
4.2.1  此电脑==》属性==》高级系统设置==》环境变量==》新建系统变量M_HOME==》配置系统变量Path
 
 
=============配置变量=========== 在Path加上一段%M_HOME%\bin;

4.3 验证

doc窗口执行命令“mvn –version”

4.4 修改maven 下的 conf 文件下的 settings.xml 配置文件,配置本地仓库。

maven 的仓库默认是放在本地用户的临时文件夹下面的 .m2 文件夹下的 repository 下

修改之后就是这个样子:

注意:本地仓库的作用就是用来存放jar包的,仓库就是在Maven同目录下创建的一个文件夹。

4.4.1 仓库的分类

中央仓库:就是所有程序猿都可以用的仓库,有相关的官网(http://www.mvnrepository.com/

公司仓库:每个公司自己的仓库源,这个因公司而异。

本地仓库:自己私人仓库源,也就是仅提供自己用。

注意:jar的查找顺序:本地仓库->私服->中央仓库

换源“阿里云”,如下图:

4.5  maven插件安装与配置

 检查 eclipse 的 maven 插件是否安装成功:Window  -->  Preferences

配置 maven:
    点击 Add 按钮,选到你本机安装 maven 的路径值:

 点击User Settings==》点击 Browse 按钮,选到你 maven 的 setting.xml 配置文件,然后点击 OK,这样就完成了 eclipse maven 插件的配置

五:Maven的使用

创建一个Maven项目

在输入项目名前需要选择本地仓库

在使用maven编写代码前还需要,给它配置开发环境;鼠标右击项目==》Properties==》Project Facets,修改成同样的数据

同样项目的配置文件web.xml中也需要把默认的2.3修改为3.1,不然会报一些莫名奇妙的错误,一定要紧跟步骤:

这是我写的项目

5.2 用Maven来写servlet web项目

5.2.1:从src/main/java包中开始写代码

在类中写doget和dopost方法

package com.ht.maven;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/demoServlet")
public class DemoServlet extends HttpServlet { private static final long serialVersionUID = -8346160086393199915L; @Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("本是青灯不归客,却因浊酒留风尘。");
}
}

在运行之前还需要再pom.xml中配置项目所需相关的jar包

  <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>T224_maven</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-</encoding>
</configuration>
</plugin>
</plugins>
</build>

运行的效果就是在控制台输出了我所输入的那句诗词:

今日分享到此结束!谢谢观看!!

Maven配置、使用的更多相关文章

  1. maven配置和下载

    下载链接:http://maven.apache.org/docs/ 以maven3.0.4为例,eclipse以kepler为例 环境变量的配置 1.系统变量-新建-变量名:MAVEN_HOME-变 ...

  2. Maven配置详见

    CSDN 2016博客之星评选结果公布    [系列直播]零基础学习微信小程序!      "我的2016"主题征文活动   博客的神秘功能 maven 配置详解 标签: mave ...

  3. hadoop在网页客户端的maven配置

    hadoop网页客户端maven配置,只能在tomcat7上运行,tomcat6和tomcat8运行会出错,我用的是tomcat-7.0.67 完整的pom.xml内容为: <!-- 这个配置只 ...

  4. Maven 配置 Selenium + testNG + reportNG 运行环境

    .markdown-preview:not([data-use-github-style]) { padding: 2em; font-size: 1.2em; color: rgb(56, 58, ...

  5. maven 配置篇 之pom

    maven 配置篇 之pom.xml(一) 博客分类:  pm mavenXML配置管理项目管理junit      说完了settings.xml配置,下来说一下maven2的主要配置pom.xml ...

  6. Maven学习总结(一副本)——Maven配置和搭建

    环境准备: JDK 1.6 Maven 3.0.4 myeclipse 8.6.1 安装 Maven 之前要求先确定你的 JDK 已经安装配置完成.Maven是 Apache 下的一个项目,目前最新版 ...

  7. Spark之路 --- Scala IDE Maven配置(使用开源中国的Maven库)和使用

    为什么要使用Maven 摘自百度百科的介绍 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具.Maven 除了以程序构建能力为特色之外,还提 ...

  8. eclipse下使用maven配置库托管jar包

    1.项目是通过maven配置库托管jar包 首先要保证maven配置库中有相应的jar包才能通过这个方法来添加jar包.maven的有点就是把要用到的jar包统一放在一个配置库中,在某个项目需要用到这 ...

  9. Maven配置jar(war)包自动打包上传Maven服务器的配置

    Maven配置jar(war)包自动打包上传Maven服务器的配置 创建jar(war)包工程 创建一个maven工程 在工程中穿件一个测试类 配置pom.xml <distributionMa ...

  10. jdk配置及maven配置

    jdk配置及maven配置 >>>>>>>>>>>>>>>>>>>>>&g ...

随机推荐

  1. js小脚本解析后台数据

    java代码 List<CodeTableBean> clfsList = StandardCodeTable.getCodeTable("clfs", "& ...

  2. Git的概念和基本使用

    概念篇 1. Git简介: 鉴于有些同学可能还不知道Git是什么,我首先对Git做个简短的介绍.Git就是类似于svn的一个版本控制工具,他其实和hg更像一些,hg也是一个分布式版本控制工具,可以说g ...

  3. Apache 后台服务器(主要处理php及一些功能请求 如:中文url)   Nginx 前端服务器(利用它占用系统资源少得优势来处理静态页面大量请求)   Lighttpd 图片服务器   总体来说,随着nginx功能得完善将使他成为今后web server得主流。

    Apache 后台服务器(主要处理php及一些功能请求 如:中文url) Nginx 前端服务器(利用它占用系统资源少得优势来处理静态页面大量请求) Lighttpd 图片服务器 总体来说,随着ngi ...

  4. 整理Mac系统 node-sass 安装失败的原因及解决办法

    转载与:https://segmentfault.com/a/1190000010984731 声明:本文非原创,如有侵权请留言或发邮件告知,作者会立即停止侵权并删除本文.发布此文章主要是希望跟作者遇 ...

  5. 32Flutter仿京东商城项目 用户中心页面布局

    import 'package:flutter/material.dart'; import 'package:flutter_jdshop/services/ScreenAdapter.dart'; ...

  6. Qt编写自定义控件56-波浪曲线

    一.前言 波浪曲线控件,其实是之前一个水波进度条控件的一个核心,其实就是利用正弦曲线来生成对应的坐标进行绘制,把这个功能单独提取出来,是为了更详细的研究各种正弦余弦等拓展效果,当时写这个效果的时候,参 ...

  7. 迭代器iterator-生成器generator

    1. 迭代 根据记录的前面的元素的位置信息 去访问后续的元素的过程 -遍历 迭代 2. 可迭代对象 iterable 如何判断可迭代对象的3种方式 能够被迭代访问的对象 for in 常用可迭代对象- ...

  8. 关于appium操作真机打开app之后无法定位页面元素的问题的解决办法

    appium操作真机打开app后无法定位页面元素:例如微信或者支付宝支付时,手机的安全控件会对支付环境进行保护,会断掉当前appium与真机的链接,导致连接失败,无法定位到页面元素,在做ui自动化之前 ...

  9. c#子线程执行完怎么通知主线程(转)

    定义一个委托实现回调函数 public delegate void CallBackDelegate(string message); 程序开始的时候 //把回调的方法给委托变量 CallBackDe ...

  10. using 关键字有两个主要用途

    转自:https://www.jianshu.com/p/5357dc4efcf8 using 关键字有两个主要用途: (一).作为指令,用于为命名空间创建别名或导入其他命名空间中定义的类型. (二) ...