Maven(二):常用命令、依赖管理

Maven(二):常用命令、依赖管理

 

相关阅读:

Maven(一):安装与环境配置、使用Maven搭建web项目

Maven(二):常用命令、依赖管理

Maven(三):将web项目的war包热部署到远程Tomcat服务器

Maven(四):使用maven整合Spring+SpringMVC+Mybatis框架详细步骤

Maven(五):使用maven整合Struts2+Spring+Hibernate框架详细步骤


 

在上一篇文章中,我们介绍了maven的安装配置与使用maven创建了一个web项目,现在,我们就稍微了解下maven工程的一些基础知识:

1、maven项目标准的目录结构:

Maven(二):常用命令、依赖管理

对项目进行细分:

Maven(二):常用命令、依赖管理

 

2、maven的常用命令:

maven常用的命令主要有:clear,compile,test,package,install,deploy。

(1)clean:清理:将项目根目录下的targer目录清理掉

Maven(二):常用命令、依赖管理

(2)compile:编译:将项目中的.java文件编译为.class文件

Maven(二):常用命令、依赖管理

(3)test:单元测试:将项目根目录下src/test/java目录下的单元测试类都会执行,单元测试类名有要求:XxxTest.java

Maven(二):常用命令、依赖管理

(4)package:打包:将项目打包,打包到项目根目录下target目录:

web project —war包

java project —jar包

(5)install:安装:打包到本地仓库,解决本地仓库多个项目公用一个jar包

(6)maven项目的生命周期:

在maven中存在“三套”生命周期,每一套生命周期相互独立,互不影响。在一套生命周期内,执行后面的命令,前面的操作会自动执行。

①CleanLifeCycle:清理生命周期:clean

②defaultLifeCycle:默认生命周期:compile、test、package、install、deploy

③siteLifeCycle:站点生命周期:site

 

3、依赖范围:

maven项目的核心配置文件是pom.xml,我们可以在这个文件中,添加需要依赖的Jar包,同时还可以在<scope>标签中配置jar的有效范围,即依赖范围,如下图:

Maven(二):常用命令、依赖管理

添加依赖:默认依赖范围是compile

provided:运行时部署到tomcat后不再需要

如果将servlet-api.jar设置为compile,打包后项目包含servlet-api.jar,war包部署到tomcat跟tomcat中存在的servlet-api.jar包冲突,导致运行失败:

Maven(二):常用命令、依赖管理

解决:修改依赖的范围:

Maven(二):常用命令、依赖管理

 

4、依赖管理:

(1)传递依赖:A依赖B,B依赖C,B是A的直接依赖,C是A的传递依赖。

遵循原则:

–第一声明者优先原则:谁先定义的就用谁的传递依赖

–路径近者优先原则:直接依赖级别高于传递依赖

(2)排除依赖:

Maven(二):常用命令、依赖管理

(3)版本锁定:(重点)

Maven(二):常用命令、依赖管理

Maven(二):常用命令、依赖管理

 

5、依赖传递的范围:

Maven(二):常用命令、依赖管理

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114624.html原文链接:https://javaforall.net

(0)
上一篇 2021年10月5日 上午7:00
下一篇 2021年10月5日 上午8:00


相关推荐

  • vscode连接SSH远程服务器(详细版)

    vscode连接SSH远程服务器(详细版)vscode 连接 SSH 远程服务器 vscode 下载和安装插件配置电脑环境进行连接解决频繁输入密码验证问题由于 ssh 远程系列工具 xshell FinaShell MobaXterm 等 都只是命令行界面 vi 打开某个目录 如 c 文件 会采用软件自带的编辑器打开 代码文件打开后格式就会很凌乱 敲代码不舒服 后来发现 vscode 上有远程 ssh 工具 连接 linux 虚机发现很多问题连接不上 也翻了很多帖子都没解决 现把方法记录分享 vscode 下载和安装插件下载安装步骤略过安装 c c remote ssh 工

    2026年2月6日
    2
  • android 自己定义通知栏遇到的问题「建议收藏」

    android 自己定义通知栏遇到的问题

    2022年1月21日
    47
  • openclaw本地部署并与飞书连接(超详细)

    openclaw本地部署并与飞书连接(超详细)

    2026年3月15日
    3
  • ubuntu安装显卡驱动的三种方法

    ubuntu安装显卡驱动的三种方法一是 系统设置 gt 软件更新 gt 附加驱动 gt 选择 nvidia 最新驱动 361 gt 应用更改简单但是不提倡 nbsp 二是 先官网下载好对应驱动编译 Nvidia 中文官网是 nbsp http www nvidia cn page home html1 打开终端 先删除旧的驱动 sudoapt getpurgenvid 2 禁用自带的 nouveaunvidi 驱动创建一个文件通过命

    2026年3月18日
    2
  • python股票自动交易从零开始-python程序化交易编程-python制作自动交易程序!

    python股票自动交易从零开始-python程序化交易编程-python制作自动交易程序!如何用 python 进行期货程序化交易 程序化交易系统目前主要是通过计算机程序实现的 其实就是把交易者决策的过程用计算机语言描述出来 然后由计算机给出交易建议或直接发送交易指令到期货公司的 SDYGDFHFGJFG 你就是想找个软件或者券商的接口去上传交易指令 你前期的数据抓取和分析可能 python 都写好了 所以差这交易指令接口最后一步 对于股票的散户 正规的法子是华宝 国内量化交易

    2026年3月16日
    2
  • pycharm使用小技巧_pycharm基本使用方法

    pycharm使用小技巧_pycharm基本使用方法Pycharm作为Python开发最常用的IDE之一,不仅兼容性好,而且功能也相当丰富,比如调试、语法高亮、智能提示等等功能,它还支持web开发框架比如Django等,当你熟悉了它之后,开发效率是相当之高的。但对于新手来说,Pycharm功能丰富的同时也是一把双刃剑,有的小伙伴刚上手之后看到一堆的英文界面难免会懵逼,哈哈哈,没有关系,今天博主就来教大家一些Pycharm最常用的技巧,以及一些pycharm常用的快捷键,让你快速上手Python开发中最常用的IDEPycharm,跟上老司机的车速!一

    2022年8月28日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号