参考文章:

最详细的maven教程:https://blog.csdn.net/wymrdjm/article/details/78695956

maven 学习:https://www.jianshu.com/p/15fa655c15cb   (推荐看)

本篇博客只用于交流学习,不用来牟利,内容可能会跟其他的一些博客内容或者资料有重复侵犯权利之类的,还请告知,必定改正。

Maven项目管理工具

maven是一个跨平台的项目管理的工具。隶属于Apache下的一个开源项目。主要服务于Java平台的项目构建、依赖管理、项目信息管理等。

1、Maven的简介

1.1 什么是maven

 是apache下的一个开源项目,是纯java开发,并且只是用来管理java项目的

1.2 Maven好处

普通的传统项目

Maven项目

分析:maven项目为什么这么小?没有jar。 需要jar吗?肯定需要。没有存在于maven项目里面,jar存在于哪?

答:在maven管理的本地仓库中,maven管理着他们

1.3 依赖管理

1.4 项目一键构建

编码  编译  测试(junit)  运行  打包  部署

一个 tomcat:run就能把项目运行起来

Maven能干的事:

编译  测试(junit)  运行  打包  部署

1.5 小结:

Maven的好处:

  • 依赖管理

 就是对jar包的统一管理  可以节省空间

  • 一键构建
  • 可以跨平台
  • 应用于大型项目 可以提高开发效率

分析:

用户管理    订单管理   支付管理   。。。。。

Maven的分模块开发

互联网项目 按业务分

传统项目   按层分 entity  dao  service  web

2、Maven的安装配置

2.1 下载安装

从此目录中拷贝文件:

直接解压到一个没有中文没有空格的文件夹里解压后的目录如下:

Maven软件的核心文件:

2.2 Maven环境变量配置

  1. 要配置jdk,  maven3.3.9这个版本所需的jdk版本必须要1.7以上
  2. 最终要运行的是maven软件中bin目录的mvn命令

所以要配置maven的环境变量

在系统变量添加

环境变量的名称:MAVEN_HOME

变量值:就是maven软甲解压的目录D:\Eclipse\apache-maven-3.3.9-bin\apache-maven-3.3.9(把这个地址换成你的)

3、把MAVEN_HOME添加到path里

4、验证maven是否配置成功:

打开dos窗口 输入: mvn –v

2.3 Maven仓库

三种仓库

1、本地仓库 自己维护

本地仓库的配置只需要修改settings.xml文件就可以

2、远程仓库(私服) 公司维护

3、中央仓库 maven团队维护    大约两个亿jar包左右

三种仓库的关系如下:

3、演示入门程序

3.1 Maven的目录结构

3.2 Maven的常用命令

Clean   清理编译的文件

Compile 编译了主目录的文件

Test  编译并运行了test目录的代码

Package 打包

Install 就是把项目发布到本地仓库

Tomcat:run  一键启动

3.3 Maven的生命周期(了解)

maven常用命令和maven的生命周期

Compile   test  package  install  deploy(发布到私服)

三种生命周期

  • Clean生命周期

Clean

  • Default生命周期

Compile   test  package  install  deploy

  • Site生命周期

Site

3.4 命令和生命周期的阶段的关系

不同的生命周期的命令可以同时执行

列如:    Mvn clean package

4、项目构建

M2e插件的安装

4.1 Maven在eclipse的配置

1、选择3.3.9版本的maven软件(记住把里面的地址换成你的地址哦┭┮﹏┭┮)

2、修改默认的本地仓库地址(记住把里面的地址换成你的地址哦┭┮﹏┭┮)

4.2 项目构建

1、新建maven项目

2、调过骨架,如果不跳过骨架选择创建出的项目目录是不全的

填写坐标

3、创建工程

4、处理红色叉号

手动在webapp文件夹下创建一个WEB-INF文件夹,在里面放一个web.xml文件

5、处理编译版本

在pom.xml中添加如下代码

<build><!-- 配置了很多插件 --><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.5.1</version>  <configuration><source>1.7</source><target>1.7</target><encoding>UTF-8</encoding></configuration></plugin></plugins>
</build>

6、创建一个servlet

修改web.xml

删除重复的代码

xmlns=http://java.sun.com/xml/ns/javaee

添加jar包

在pom中添加如下代码:

<dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.9</version><scope>test</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>2.5</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jsp-api</artifactId><version>2.0</version><scope>provided</scope></dependency>
</dependencies>

会发现jar包已添加到项目中

启动项目

右击项目---run as –maven build ….

5 、依赖管理

Jar包的管理

需求:整合struts2   页面上传一个客户id 跳转页面

5.1 添加依赖:

打开maven仓库的视图:

5.2 重建索引

  1. 创建maven项目(同上)
  2. 跳过骨架(同上)
  3. 填写坐标信息(同上)
  4. 添加web.xml文件(同上)
  5. 修改编译版本(同上)
  6. 添加坐标 选择Dependencies标签 点击add

7、手动输入要添加的坐标,选择版本

8、可以看到 pom.xml文件中多出了如下代码

9、同样的方式添加servlet-api.jar和jsp-api.jar 注意选择scope为provided

10、写action代码

import com.opensymphony.xwork2.ActionSupport;
public class CutomerAction extends ActionSupport {private Long custId;public Long getCustId() {return custId;}public void setCustId(Long custId) {this.custId = custId;}public String findById(){return SUCCESS;}}

11、添加struts.xml文件放到resources目录中

内容:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""http://struts.apache.org/dtds/struts-2.3.dtd"><struts><!-- 配置常量 --><!-- 字符集 --><constant name="struts.i18n.encoding" value="UTF-8"></constant><!-- 开发模式 --><constant name="struts.devMode" value="true"></constant><!-- 主题 --><constant name="struts.ui.theme" value="simple"></constant><!-- 扩展名 --><constant name="struts.action.extension" value="action"></constant><!-- 通用package --><package name="customer" namespace="/" extends="struts-default"><action name="findById" class="cn.crm.action.CustomerAction" method="findCustomerById"><result name="success">/info.jsp</result></action></package>
</struts>

12、添加jsp页面

13、修改web.xml文件 添加过滤器

5.3  依赖范围

5.3.1 Compile  struts2-core

编译(compile)时需要 测试时需要,,运行时需要,打包时需要

5.3.2 Provided  jsp-api.jar   servlet-api.jar

编译(compile)时需要,测试(test)时也需要 ,运行时不需要,打包时不需要

5.3.3 Runtime   数据库驱动包

编译时不需要,测试时需要,,运行时需要,打包时需要

5.3.4 Test  junit.jar

编译时不需要,测试时需要,运行时不需要,打包也不需要

添加插件

Maven  add  plugin

如果用tomcat7运行用命令:

Tomcat7:run

常见问题:

上面是我第一次搭建maven环境的整个大致过程, 所以想记录一下, 也方便以后以后进行查阅,当然也供大家参考,如果有什么问题可以@我,我看到之后会给予回复的。

maven安装使用手册之-----------------------maven介绍及安装部署相关推荐

  1. testlink mysql配置_TestLink安装配置手册

    TestLink安装配置手册 范围 本文仅作为安装和配置TestLink的参考文档. 本文的第一部分为TestLink的安装步骤,第二部分是TestLink的配置方法. 本文和其他相关文档可在中寻求帮 ...

  2. ansible的介绍与安装

    Ansible的介绍与安装 文章目录 Ansible的介绍与安装 一.什么是ansible 二.ansible优点 三.ansible管理方式 四.ansible系统架构 五.ansible任务执行模 ...

  3. Ubuntu 10.10安装配置指南Ubuntu 11.10 图形安装教程

    Ubuntu 11.10 (Oneiric Ocelot )图形(图解)安装教程.基本设置.网络设置.软件源.语言与输入法.硬件驱动.Unity.Gnome3.Ubuntu文档.制作USB Live. ...

  4. mysql5.6安装51cto_MySQL 5.6 for Windows配置安装之解压缩版

    MySQL是一个关系型,功能强大的数据库,目前十分流行.但是官网给出的安装包有两种格式,一个是msi格式,一个是zip格式的.很多人下了zip格式的解压发现没有setup.exe,起初我面对一堆文件一 ...

  5. Maven精选系列--介绍与安装

    转载自 Maven精选系列--介绍与安装 Maven介绍 Maven是一个项目管理工具,用来管理项目的生命周期,如项目中各个项目之间的依赖管理,项目中使用到的jar包依赖管理,还有许多项目构建的插件等 ...

  6. 三、安装cmake,安装resin ,tars服务,mysql 安装介绍,安装jdk,安装maven,c++ 开发环境安装...

    三.安装cmake,安装resin 2018年07月01日 21:32:05 youz1976 阅读数:308 开发环境说明: centos7.2 ,最低配置:1核cpu,2G内存,1M带宽 1.安装 ...

  7. Jenkins——持续集成及Jenkins介绍和安装配置(插件,用户权限,凭据,Maven安装打包,配置tomcat用户权限)

    持续集成及Jenkins介绍和安装配置 持续集成及Jenkins介绍 软件开发生命周期 持续集成 持续集成的组成要素 持续集成的好处 Jenkins介绍 Jenkins安装和持续集成环境配置 Gitl ...

  8. aliyun maven 添加jar_Maven介绍及安装

    目录: 解决问题 原理 安装 Maven项目标准目录结构 Maven 构建生命周期 (选择配置)到阿里云仓库下载 idea配置maven Eclipse 配置maven Maven Maven是一个项 ...

  9. Maven的介绍与安装教程

    一.Maven的详解 What is Maven? Maven是一个项目管理工具,它包含了一个项目对象模型,一组标准集合,一个项目生命周期,一个依赖管理系统,和用来运行定义在生命周期中插件目标的逻辑. ...

  10. maven 安装本地jar_使用Maven安装本地jar

    maven 安装本地jar 1.问题与选择 Maven是一种非常通用的工具,其可用的公共存储库首屈一指. 但是,总会有一个不在任何地方托管的工件,或者托管该工件的存储库有依赖的风险,因为当您需要它时, ...

最新文章

  1. Openstack_通用模块_Oslo_vmware 创建 vCenter 虚拟机快照
  2. javascritp笔记1
  3. 机器学习-数据科学库(第一天)
  4. Django基础,Day3 - 编写 django admin
  5. Java程序员谈一谈-----java程序员成长之路
  6. Feature Engineering 特征工程 3. Feature Generation
  7. MySQL索引类型总结和使用技巧以及注意事项
  8. java 线程安全性_Java线程安全性问题摘要_Power Node Java Academy的组织
  9. SqlServer2012 File Table文件表
  10. 同人游戏开发工具巡礼——AVG ADV 引擎篇
  11. 未检测到与wia兼容的设备_关于检测到不兼容硬件设备的解决办法
  12. Linux程序设计 清空标准输入缓冲区
  13. vscode下载提速方法
  14. 高创CDHD伺服驱动器调试软件ServoStudioSetup V2.18版本与技术资料
  15. centos7.5下安装teamview
  16. 金蝶计算机快捷键,金蝶kis系列软件常用快捷键汇总
  17. java的框架gwt介绍_GWT Portlets
  18. 测试局域网或wifi实际最大带宽
  19. HTML5之插入图片
  20. visio的替代者yEd Graph Editor

热门文章

  1. 大数据单表查询mysql
  2. Python模块之functools
  3. 航海家软件公式全破解
  4. 在openSUSE下使用Snapper实现快照…
  5. 【Traffmonetizer】利用闲置电脑/VPS/安卓手机/树莓派来挂机
  6. lisp 车位块自动编号_CAD exPRess tools 车位自动编号
  7. C语言习题:编程序将”China”译成密码[C语言]
  8. 【暑期每日一题】洛谷 P1192 台阶问题
  9. 织梦dedecms TAG标签调用汇总(史上最全)
  10. perl中CPAN的安装