linux怎么查看本机内存大小
255
2022-09-06
Maven基础
文章目录
Maven的基本使用
Maven常用命令Maven生命周期
IDEA配置Maven
配置Maven环境Maven坐标IDEA 创建 Maven项目IDEA 导入 Maven项目配置 Maven-Helper 插件
依赖管理
使用坐标导入jar包依赖范围
Maven的基本使用
Maven常用命令
compile :编译clean:清理test:测试package:打包install:安装
命令演示:
在 资料\代码\maven-project 提供了一个使用Maven构建的项目,项目结构如下:
而我们使用上面命令需要在磁盘上进入到项目的 pom.xml 目录下,打开命令提示符
编译命令演示:
compile :编译
执行上述命令可以看到:
从阿里云下载编译需要的插件的jar包,在本地仓库也能看到下载好的插件在项目下会生成一个target 目录
同时在项目下会出现一个 target 目录,编译后的字节码文件就放在该目录下
清理命令演示:
mvn clean
执行上述命令可以看到
从阿里云下载清理需要的插件jar包删除项目下的target 目录
打包命令演示:
mvn package
执行上述命令可以看到:
从阿里云下载打包需要的插件jar包在项目的terget 目录下有一个jar包(将当前项 目打成的jar包)
测试命令演示:
mvn test
该命令会执行所有的测试代码。执行上述命令效果如下
安装命令演示:
mvn install
该命令会将当前项目打成jar包,并安装到本地仓库。执行完上述命令后到本地仓库查看结果如下:
Maven生命周期
Maven 构建项目生命周期描述的是一次构建过程经历经历了多少个事件
Maven 对项目构建的生命周期划分为3套:
同一套生命周期内,执行后边的命令,前面的所有命令会自动执行。例如默认(default)生命周期如下:
注意是同一套,两套之间相互不打扰
当我们执行 install(安装)命令时,它会先执行 compile命令,再执行 test 命令,再执行 package 命令,最后执行 install 命令。
当我们执行 package (打包)命令时,它会先执行 compile 命令,再执行 test 命令,最后执行 package 命令。
默认的生命周期也有对应的很多命令,其他的一般都不会使用,我们只关注常用的:
IDEA配置Maven
配置Maven环境
Maven坐标
什么是坐标?
Maven 中的坐标是资源的唯一标识使用坐标来定义项目或引入项目中需要的依赖
Maven 坐标主要组成
groupId:定义当前Maven项目隶属组织名称(通常是域名反写)artifactId:定义当前Maven项目名称(通常是模块名称,例如 order-service、goods-service)version:定义当前项目版本号
例如:
注意:
上面所说的资源可以是插件、依赖、当前项目。我们的项目如果被其他的项目依赖时,也是需要坐标来引入的。
IDEA 创建 Maven项目
IDEA 导入 Maven项目
配置 Maven-Helper 插件
依赖管理
使用坐标导入jar包
使用坐标引入jar包的步骤:
在项目的 pom.xml 中编写
注意:具体的坐标我们可以到如下网站进行搜索pom.xml 中 按 alt + insert,选择 Dependency
在弹出的面板中搜索对应坐标,然后双击选中对应坐标
自动导入设置:
选择 IDEA中 File --> Settings
在弹出的面板中找到 Build Tools
依赖范围
通过设置坐标的依赖范围(scope),可以设置 对应jar包的作用范围:编译环境、测试环境、运行环境。
编译环境:也就是对在src下main中的代码都有效 测试环境:也就是对在src下test中的代码都有效
如下图所示给 junit 依赖通过 scope 标签指定依赖的作用范围。 那么这个依赖就只能作用在测试环境,其他环境下不能使用。
那么 scope 都可以有哪些取值呢?
依赖范围 | 编译classpath | 测试classpath | 运行classpath | 例子 |
compile | Y | Y | Y | logback |
test | - | Y | - | Junit |
provided | Y | Y | - | servlet-api |
runtime | - | Y | Y | jdbc驱动 |
system | Y | Y | - | 存储在本地的jar包 |
compile :作用于编译环境、测试环境、运行环境。test : 作用于测试环境。典型的就是Junit坐标,以后使用Junit时,都会将scope指定为该值provided :作用于编译环境、测试环境。servlet-api ,在使用它时,必须将scope 设置为该值,不然运行时就会报错runtime : 作用于测试环境、运行环境。jdbc驱动一般将scope 设置为该值,当然不设置也没有任何问题
注意:如果引入坐标不指定scope 标签时,默认就是 compile 值。以后大部分jar包都是使用默认值。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~