maven

Maven学习

maven是什么
一个项目管理工具,包含一个项目对象模型(POM),一组标准集合,一个项目生命周期,一个依赖管理系统,和用来运行定义在生命周期阶段(phase)中插件(plugin)目标 (goal)的逻辑。
maven的优势
依赖管理

​ 我们web项目运行起来一般需要添加一些jar包,想如果具有相同架构的项目有十个,那么我们就需要将这一份 jar 包复制到十个不同的工程中并且项目大小会很大,而相反使用maven构建项目会发现工程小很多,其中是没有哪些jar包的,那么jar包都去哪里了?

​ maven会将jar包所需要的坐标保存在pom.xml中,再通过坐标找到maven仓库中对应的jar包。

项目一键构成

​ 我们的项目往往是通过编译、测试、运行、打包、安装 ,部署等一系列过程
在这里插入图片描述
​ maven提供一键够构成可以将部署的整个过程都交给maven进行管理

maven仓库的分类

​ 本地仓库:用来存储从远程仓库或中央仓库下来的插件和jar包,项目使用时优先从本地仓库进行查找。

​ 远程仓库(私服):远程仓库则是公司里所说的私服,如果本地仓库没有就去远程仓库找。

​ 中央仓库:在 maven 软件中内置一个远程仓库地址 http://repo1.maven.org/maven2 ,它是中央仓库,服务于整个互联网,它是由 Maven 团队自己维护,里面存储了非常全的 jar 包,它包 含了世界上大部分流行的开源项目构件。

​ 在公司工作时首先通过本地仓库,入如果没有则可以去在同一局域网的私服查找,私服也没有的时候就需要通过联网到中央仓库进行查找,私服中的jar包来源是中央仓库或者是本地仓库上传的,正常则没有通过远程仓库。

​ 可以通过maven文件夹下conf中的setting.xml中的绝对路径 来修改本地仓库的位置

文件结构

​ 一个maven项目中包括:

src/main/java —— 存放项目的.java 文件 
src/main/resources —— 存放项目资源文件,如 spring, hibernate 配置文件
src/test/java —— 存放所有单元测试.java 文件,如 JUnit 测试类 
src/test/resources —— 测试资源文件
target —— 项目输出位置,编译后的 class 文件会输出到此目录
pom.xml——maven 项目核心配置文件
常用命令
mvn clean:清除target目录及其内容。
mvn compile:compile 是 maven 工程的编译命令,作用是将 src/main/java 下的文件编译为 class 文件输出到 target目录下。
mvn test:会执行 src/test/java 下的单元测试类,在target下生成java项目的class以及测试类的class。
mvn package:package 是 maven 工程的打包命令,对于 java 工程执行 package 打成 jar 包,对于 web 工程打成 war包,存放在target目录下
mvn install:install 是 maven 工程的安装命令,执行 install 将 maven 打成 jar 包或 war 包发布到本地仓库。
生命周期

​ compile、test、package、install是一个默认生命周期,在执行后面的命令的时候会默认的将前面的命令执行

​ clean是一个清理生命周期

概念模型

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值