1.背景

2.什么是maven?

通俗的说就是,不用手动拷贝jar包,帮我们管理项目结构,只需要配置坐标,自动从中央仓库下载(其他介绍请百度...)。

3.Maven的安装与配置

注意:Maven在使用之前必需要先安装好jdk

Maven的安装非常简单,同tomcat一样解压就可以了,但是为了保证在任何目录下都可以使用maven,必须配置环境变量(配置方式同jdk的配置方式一样),具体操作步骤如下:

步骤一:解压

步骤二:配置环境变量

操作步骤:右键我的电脑--》属性--》高级系统设置--》环境变量--》在系统变量中选择新建,然后配置 MAVEN_HOME=MAVEN解压路径,然后点击确定:

步骤三:添加path路径

步骤四:检查是否安装成功

4.maven工程介绍

4.1. Maven工程结构

  src/main/java —— 存放项目的.java文件
  src/main/resources —— 存放项目资源文件,如spring, hibernate配置文件,hibernate映射文件
  src/main/webapp —— 存放jsp,css,image等文件
  src/test/java —— 存放所有测试.java文件,如JUnit测试类
  src/test/resources —— 测试资源文件
  pom.xml,主要要写的配置文件
  target —— 项目由maven自动输出位置,编译后所有class文件都在这里

4.2.  Maven坐标

Maven坐标主要组成
  groupId 组id:定义当前Maven项目隶属项目,包名
  artifactId 模块id:定义实际项目中的一个模块,模块名(工程名称)
  version:定义当前项目的当前版本
  SNAPSHOT快照版本,就是开发版本
  RELEASE释放版本,正式版本,稳定  使用其他机构提供的jar文件,必须使用释放版本
  packaging:定义该项目的打包方式(jar/war)  默认值jar

4.3. 从互联网搜索需要的坐标,获取到jar文件

   地址:http://mvnrepository.com

4.4. 仓库管理

 本地仓库:自己电脑存放jar文件地方~/.m2/repository/每个用户只有一个本地仓库
 远程仓库
 中央仓库:Maven默认的远程仓库 https://repo.maven.apache.org/maven2

查看默认中央仓库地址:

在maven3.3.9文件夹下的lib下(D:\apache-maven-3.3.9\lib)有很多jar

其中有一个maven-model-builder-3.3.9.jar,用解压软件打开,org\apache\maven\model下有个pom-4.0.0.xml文件

解压后的文件

打开文件pom-4.0.0.xml

私服:是一种特殊的远程仓库,它是架设在局域网内的仓库
镜像:用来替代中央仓库,速度一般比中央仓库快

4.5. 安装maven中没有的jar包

将个人jar包(即:maven仓库中没有的jar包,这里以Oraclejdbc包为例)安装到Maven本地仓库,步骤如下:

步骤一: 执行命令:
mvn install:install-file -Dfile=D:\jar\ojdbc7-12.1.0.2.jar -DgroupId=com.oracle –DartifactId=ojdbc7 –Dversion=12.1.0.2 –Dpackaging=jar

出现:BUILD SUCCESS即可

步骤二:使用

5.将自己的项目打包并安装到maven仓库

步骤一:创建maven项目

详细步骤:https://www.cnblogs.com/newAndHui/p/8534400.html

步骤二:编写一个任意的简单方法

步骤三:打包

步骤四:使用命令mvn install安装到仓库

mvn install:install-file -Dfile=F:\test\mavenday1011.jar -DgroupId=com.mavendemo.day01 –DartifactId=mavenday1011 –Dversion=1.1.1.2 –Dpackaging=jar

6.maven中jar、war、pom的区别

pom:打出来可以作为其他项目的maven依赖,在工程A中添加工程B的pom,A就可以使用B中的类。用在父级工程或聚合工程中。用来做jar包的版本控制。

jar包:通常是开发时要引用通用类,打成jar包便于存放管理。当你使用某些功能时就需要这些jar包的支持,需要导入jar包。

war包:是做好一个web网站后,打成war包部署到服务器。

7.搭建基于maven的ssm工程

详细笔记见博客:https://www.cnblogs.com/newAndHui/p/8534400.html

8.总结与资料下载

1.博客对应的视频教程

2.在线学习:https://study.163.com/course/courseMain.htm?courseId=1210268986&share=2&shareId=400000000332026

3.疑问解答、资料领取、课程代码下载,加微信851298348,发送“maven”。

完美!

maven实战教程-含视频讲解的更多相关文章

  1. iKcamp|基于Koa2搭建Node.js实战(含视频)☞ 错误处理

    沪江CCtalk视频地址:https://www.cctalk.com/v/15114923887518 处理错误请求 爱能遮掩一切过错. 当我们在访问一个站点的时候,如果访问的地址不存在(404), ...

  2. iKcamp|基于Koa2搭建Node.js实战(含视频)☞ 记录日志

    沪江CCtalk视频地址:https://www.cctalk.com/v/15114923883523 log 日志中间件 最困难的事情就是认识自己. 在一个真实的项目中,开发只是整个投入的一小部分 ...

  3. iKcamp|基于Koa2搭建Node.js实战(含视频)☞ 处理静态资源

    视频地址:https://www.cctalk.com/v/15114923882788 处理静态资源 无非花开花落,静静. 指定静态资源目录 这里我们使用第三方中间件: koa-static 安装并 ...

  4. iKcamp|基于Koa2搭建Node.js实战(含视频)☞ 解析JSON

    视频地址:https://www.cctalk.com/v/15114923886141 JSON 数据 我颠倒了整个世界,只为摆正你的倒影. 前面的文章中,我们已经完成了项目中常见的问题,比如 路由 ...

  5. iKcamp|基于Koa2搭建Node.js实战(含视频)☞ 视图Nunjucks

    视频地址:https://www.cctalk.com/v/15114923888328 视图 Nunjucks 彩虹是上帝和人类立的约,上帝不会再用洪水灭人. 客户端和服务端之间相互通信,传递的数据 ...

  6. iKcamp|基于Koa2搭建Node.js实战(含视频)☞ 代码分层

    视频地址:https://www.cctalk.com/v/15114923889408 文章 在前面几节中,我们已经实现了项目中的几个常见操作:启动服务器.路由中间件.Get 和 Post 形式的请 ...

  7. iKcamp|基于Koa2搭建Node.js实战(含视频)☞ 规范与部署

    沪江CCtalk视频地址:https://www.cctalk.com/v/15114923889450 规范与部署 懒人推动社会进步. 本篇中,我们会讲述三个知识点 定制书写规范 开发环境运行 如何 ...

  8. iKcamp团队制作|基于Koa2搭建Node.js实战(含视频)☞ 中间件用法

    中间件用法--讲解 Koa2 中间件的用法及如何开发中间件

  9. 阿里云Linux服务器安装Maven实战教程

    下载地址 https://maven.apache.org/download.cgi 文件上传 把下载的文件上传到阿里云服务器 /usr/local/software 的目录(使用工具) window ...

  10. iKcamp团队制作|基于Koa2搭建Node.js实战(含视频)☞ 路由koa-router

    路由koa-router--MVC 中重要的环节:Url 处理器

随机推荐

  1. 订单号规则,不能重复。redis去重 redis集合set应用

    订单号规则,不能重复.redis去重 redis集合set应用 redis锁定商品解决并发售卖问题 RedisUtil工具类https://www.cnblogs.com/oktokeep/p/179 ...

  2. LocalDateTime日期相互转换字符串

    /** LocalDateTime日期相互转换字符串 * 默认的时间日期样式 */ public static final String YYYYMMDDHHMMSSS_PATTERN = " ...

  3. 简单的解释下什么是CNAME

    今天在用阿里云的安全防护给接口域名做web应用防火墙,需要配置cname,原来有用到过但是一直没去了解过,只知道怎么用今天搜了一下看看下面是原文,白话文好理解分享一下. 什么是CNAME?先简单的说下 ...

  4. python-pytest:多进程、多线程执行用例

    准备工作: Python Package pytest-parallel-0.0.10: windows版本只能是0.0.10 pytest-xdist 这两个包都是基于pytest基础上,实现多进程 ...

  5. 服务器上安装centos7系统遇到的坑

    centos7的安装报错"no controller found" 出现no controller found解决方案1.等待命令行出现 2.输入ls /dev/sd*   找到自 ...

  6. 降维(二)PCA

    PCA 主成成分分析(Principal Component Analysis,PCA)在目前是非常热门的降维算法.首先它找到一个最接近数据的超平面,然后将数据投影到这个平面上. 保持方差(Prese ...

  7. MySQL 获取所有表名、所有表结构

    获取所有表名 SELECT A.TABLE_SCHEMA '数据库', A.TABLE_NAME '表名', A.TABLE_ROWS '表记录行数', A.CREATE_TIME '创表时间', A ...

  8. Spring的AOP快速实现通用日志打印

    需求分析 针对VideoService接口实现日志打印 三个核心包 spring-aop:AOP核心功能,例如代理工厂 aspectjweaver:简单理解,支持切入点表达式 aspectjrt:简单 ...

  9. 基于表单登录的cookies登录

    1.基于表单登录的cookies登录 In [ ]: import requests import matplotlib.pyplot as plt from http.cookiejar impor ...

  10. 图的存储、创建、遍历、求最小生成树、最短路径(Java)

    带权无向图 存储结构 存储结构选用邻接表. 当一个图为稀疏图时,使用邻接矩阵法显然要浪费大量的存储空间,而图的邻接表法结合了顺序存储和链式存储方法,大大减少了这种不必要的浪费. 当然,即使我们所处理的 ...