三层架构
目前的技术存在的问题
一个项目就是一个工程
项目过大,就不适合用package来划分模块
借助于Maven就可以将一个项目划分为多个工程
项目中需要的jar包必须手动“复制”,”粘贴“到WEB-INF/lib目录下
同样的jar包出现在不同的项目中,浪费空间也比较臃肿
借助Maven可以将jar包保存在“仓库中”,有需要的工程可以“引用"这个文件接口
jar包需要别人替我们准备好,或者在官网下载
有些技术的官网就是通过Maven或SVN等专门的工具来提供下载
有时候下载的jar包是不规范的
借助Maven可以规范的下载jar包,所有的知名框架都在存放在Maven的中央仓库中
一个jar包依赖的其它jar包也需要自己手动加入到项目中
如果所有的jar包之间的依赖都需要我们了解,那就工作量极大
Maven是什么
Maven是一款服务于Java平台的自动化构建工具
自动管理jar文件
自动下载一个jar包依赖的jar包
总之可以解决上面的问题
构建
构建就是一些步骤,完成项目代码的编译,测试,运行,打包,部署
清理:把之前项目变异的东西删除掉,为新的编译代码做准备
编译:把程序源文件编译为执行文件,java–>class文件(批量的)
测试:可以执行程序代码,验证功能是否正确(批量的)
报告:生成测试结果的文件
打包:把所有的class文件,配置文件压缩到一个压缩包中,java程序文件的压缩文件是.jar扩展名的;web文件压缩文件是.war扩展名
安装:把jar,war 文件安装到本机仓库
核心概念
:一个文件,,项目对象模型
约定的目录结构:Maven项目的目录和文件的位置都是规定的
坐标:是一个唯一的字符串,用来表示资源的
依赖管理:管理项目可以使用jar文件
仓库管理:存放资源
生命周期:构建项目的过程
插件和目标:执行Maven构建的时候用的工具是插件
安装
=
把变量加到之中,
注意,要是环境变量没有配置好,会出错,要配置
测试
在窗口输入命令
默认下载到的地址
默认仓库:
在所在目录在命令行窗口输入命令 ,进行下载
仓库分类
maven 的插件(jar包)
第三方jar 包
本地仓库
远程仓库(互联网上的)
中央仓库 https://repo.maven.apache.org
中央仓库镜像(重要城市)
私服(公司内部)
使用:本机–>私服–>镜像–>中央仓库
Maven约定的目录结构
:测试程序包和包中的文件
:程序要使用的配置文件
:包和包中的文件
:程序要使用的配置文件
main :主程序代码和配置文件
test 测试程序代码
:的核心文件(必须的)
测试
新建一个上面的目录,并新建一个文件,编译之后在项目目录下生成一个目录,文件编译之后就会在这个目录下生成文件
在class目录下进入命令,输入下面的命令执行上面的程序
设置本机存放资源的目录位置
修改Maven的配置文件
备份
在中修改为(不要出现中文)
文件
坐标
在此网址查找坐标 https://mvnrepository.com/
,,总称为坐标(唯一)
依赖
根据下面的坐标在本地仓库中查询相关资源,也就是把 jar 包引用到项目中
:设置属性
:与构建相关的配置
生命周期,命令,插件
生命周期
构建项目的过程
清理
编译
测试
报告
打包
安装
部署
使用命令对上面的生命周期进行执行
命令执行时,真正执行的是插件(jar包,类文件)
常用命令
IDEA中使用
下面的链接详细描述了创建普通项目和web项目的过程
http://www.cnblogs.com/wql025/p/5215570.html
idea中内置了maven,但是一般不使用内置的,因为内置的修改maven设置不方便
使用自己安装的maven,需要覆盖idea中默认的设置,让idea指定maven安装位置等信息
配置的入口
配置当前工程 settings
之后新建工程 other settings
创建模块
使用技巧
文件刷新
有时候在pom文件配置之后,由于没有刷新而导致会出现红色提示线
单个工程刷新
全部工程刷新
设置文件类型
导入模块
依赖范围
表示在maven构建项目的哪些阶段起作用
标签
常用操作
属性设置
全局变量
定义之后,在下面的值引用时
资源插件
默认没有使用的时候,执行编译代码时,会把目录中的文件拷贝到目录中;对于目录下的非文件不处理,不拷贝到目录中
我们的程序需要把一些文件放在目录中,当我们执行程序时,需要用到目录中的文件(比如properties配置文件)。需要告诉在目录下的文件时,需要把文件一同拷贝到目录中,此时需要在中配置
------------END-----------
领取专属 10元无门槛券
私享最新 技术干货