一:什么是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. 调整 全局jvm 大小 tomcat 调整jvm大小

    z最近公司换了一个线上的windows服务器,原来的内存48g,现在2g.项目启动报内存不足.又重新安装jre 安装jre 教程链接:(谢谢各位博友) https://www.genban.org/t ...

  2. java集合类型源码解析之ArrayList

    前言 作为一个老码农,不仅要谈架构.谈并发,也不能忘记最基础的语言和数据结构,因此特开辟这个系列的文章,争取每个月写1~2篇关于java基础知识的文章,以温故而知新. 如无特别之处,这个系列文章所使用 ...

  3. Alpha冲刺(4/4)

    队名:福大帮 组长博客链接:https://www.cnblogs.com/mhq-mhq/p/11913386.html 作业博客 :https://edu.cnblogs.com/campus/f ...

  4. Python数据预处理(sklearn.preprocessing)—归一化(MinMaxScaler),标准化(StandardScaler),正则化(Normalizer, normalize)

      关于数据预处理的几个概念 归一化 (Normalization): 属性缩放到一个指定的最大和最小值(通常是1-0)之间,这可以通过preprocessing.MinMaxScaler类实现. 常 ...

  5. Pandas的Categorical Data

    http://liao.cpython.org/pandas15/ Docs » Pandas的Categorical Data类型 15. Pandas的Categorical Data panda ...

  6. TynSerial类介绍

    TynSerial类介绍 TynSerial是咏南中间件封装的,支持数据二进制序列(还原)的类. 支持WINDOWS.LINUX.MAC.IOS.ANDROID. 支持D6及以上版本. 支持TCP/H ...

  7. Vue引入远程JS文件

    问题 最近在使用 Vue 做东西,用到钉钉扫描登录的功能,这里需要引入远程的 js 文件,因为 Vue 的方式跟之前的不太一样,又不想把文件下载到本地应用,找了一下解决的方法,貌似都需要引入第三方的库 ...

  8. Maven中的SnapShot版本和Release版本

    # Maven中的SnapShot版本和Release版本 ## 区别 - SnapShot 快照版本- Release 发布版本 ## 重要区别 - 本地获取这些依赖的机制不同,如果是快照版本,Ma ...

  9. redis配置文件讲解

    #redis.conf # Redis configuration file example. # ./redis-server /path/to/redis.conf ############### ...

  10. python笔记8 socket(TCP) subprocess模块 粘包现象 struct模块 基于UDP的套接字协议

    socket 基于tcp协议socket 服务端 import socket phone = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 买 ...