maven 工程pom依赖优化及常用命令
本文为博主原创,转载请注明出处:
1. mvn dependency:list ---- 列出项目的所有jar包
mvn dependency:list -Dverbose
该命令可以列出项目依赖的所有jar包,-Dverbose参数会把被忽略的jar,即相同jar包的不同版本引入也列出来。
输出示例:

2.mvn dependency:tree ---- 列出项目的包依赖树
mvn dependency:tree -Dverbose
这个命令跟上一个命令的区别就是,这个命令的依赖,输出来是个树,更方便看依赖关系。
输出示例:

2.1 查看某一个包的依赖树
mvn dependency:tree -Dverbose -Dincludes=commons-collections

3. mvn dependency:analyze ---- 分析依赖并优化
mvn dependency:analyze -Dverbose
mvn dependency:analyze命令可以分析当前项目的依赖,我们可以根据这个结果删除多余的依赖。
其执行的结果如下:
[INFO] Used declared dependencies found:
[INFO] com.alibaba:fastjson:jar:1.2.73:compile
[INFO] org.hibernate:hibernate-validator:jar:5.3.6.Final:compile
[INFO] io.springfox:springfox-swagger2:jar:2.7.0:compile
[INFO] junit:junit:jar:4.12:test
[INFO] joda-time:joda-time:jar:2.9.9:compile
[WARNING] Used undeclared dependencies found:
[WARNING] io.springfox:springfox-spi:jar:2.7.0:compile
[WARNING] com.fasterxml.jackson.core:jackson-annotations:jar:2.8.0:compile
[WARNING] io.springfox:springfox-core:jar:2.7.0:compile
[WARNING] org.apache.commons:commons-lang3:jar:3.5:compile
[WARNING] org.slf4j:slf4j-api:jar:1.7.25:compile
[WARNING] org.springframework:spring-web:jar:4.3.16.RELEASE:compile
[WARNING] javax.validation:validation-api:jar:1.1.0.Final:compile
[WARNING] org.jasig.cas.client:cas-client-core:jar:3.3.3:compile
[WARNING] io.springfox:springfox-spring-web:jar:2.7.0:compile
[WARNING] net.logstash.logback:logstash-logback-encoder:jar:4.11:compile
[WARNING] org.springframework:spring-beans:jar:4.3.16.RELEASE:compile
[WARNING] Unused declared dependencies found:
[WARNING] org.apache.tomcat.embed:tomcat-embed-jasper:jar:8.5.29:provided
[WARNING] org.springframework.boot:spring-boot-starter-tomcat:jar:1.5.12.RELEASE:provided
[WARNING] org.projectlombok:lombok:jar:1.18.12:provided
[WARNING] org.springframework:spring-test:jar:4.3.16.RELEASE:test
[WARNING] org.springframework.boot:spring-boot-loader:jar:1.5.12.RELEASE:provided
[WARNING] io.springfox:springfox-swagger-ui:jar:2.7.0:compile
[INFO] ------------------------------------------------------------------------
mvn dependency:analyze 的执行结果会将 pom 的依赖解析成三部分: Used declared dependencies、Used undeclared dependencies、Unused declared dependencies 三部分,可以根据 Unused declared dependencies 中的依赖进行优化;从pom中进行相应的删除,从而减少依赖;
Used undeclared dependencies: 表示项目中使用到的,但是没有显示声明的依赖
Unused declared dependencies: 表示项目中未使用的,但显示声明的依赖;可以进行删除
Used declared dependencies:表示项目中使用且声明的依赖
4. mvn dependency:analyze-duplicate ---- 分析是否存在重复配置的依赖
mvn dependency:analyze-duplicate
分析 pom 中是否存在重复配置的依赖:其执行结果如下:

maven 工程pom依赖优化及常用命令的更多相关文章
- Linux 系统基础优化和常用命令
目录 Linux 系统基础优化和常用命令 软连接 tar解压命令 gzip命令 netstart命令 ps命令 kill命令 killall命令 SELinux功能 iptables防火墙 Linux ...
- 运维 07 Linux系统基础优化及常用命令
Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令 ...
- Maven工程pom.xml文件秒变gradle工程的命令
下面是一个maven工程,我想把它转成gradle项目,怎么办? 打开cmd命令行窗口,切换到你的maven工程的pom.xml文件所在目录,然后执行如下命令: gradle init --type ...
- Maven笔记之核心概念及常用命令
Maven的核心概念 Maven是一款服务于java平台的自动化构建工具. 自动化构建工具还有:make->ant->maven->gradle 1.约定的目录 2.P ...
- Maven 工程 POM.XML文件最全详解
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
- Tomcat性能优化及常用命令整理
1汤姆猫性能优化 1.1连接参数 1.1.1默认连接配置 默认连接器采用阻塞式 IO,默认最大线程数为200,配置如下: <Connector port="8080" pro ...
- 导入Maven 工程pom.xml首行报错解决方法
1.利用IDE导入一个Maven工程,但是pom.xml文件首行报错,发现是maven版本需要升级 2.在pom.xml文件 增加配置 <properties> <maven-jar ...
- maven工程pom.xml报Missing artifact net.sf.jasperreports:jasperreports:jar:6.2.0
有时maven工程的pom.xml报以下类型错误: Description Resource Path Location TypeMissing artifact net.sf.jasperrepor ...
- 解决Eclipse里的Maven工程pom.xml文件报:web.xml is missing and <failOnMissingWebXml> is set to true错误
打开eclipse准备进行开发时,发现项目上有个红星号,查看错误后发现报了一个:"web.xml is missing and <failOnMissingWebXml> is ...
- Maven 专题(七):常用命令
mvn archetype:generate : 反向生成项目的骨架 mvn clean: 清除各个模块target目录及里面的内容 mvn compile: 静态编译,根据xx.java生成xx.c ...
随机推荐
- 基于python人脸识别考勤系统(语音播报)
介绍: 本项目是大二寒假在家没事写的,一直没有时间讲本项目分享出来,现在有时间了哈.那就让我简单的将项目介绍一下吧.好了废话不多说了,直接上图 初始化界面: 可以看到所有的功能都展现在了左边的功能栏中 ...
- 组合式api-ref引用子组件、dom元素, defineExpose的使用
和vue2一样,我们有时候希望父组件能够调用子组件中的方法.属性.那么就要用到ref. 然后你会发现,根本调用不了子组件中的方法"sonSayHi",如下图: 原因: 使用
- 华企盾DSC邮箱服务器测试连接提示Undefined error id(端口不通)
解决方法:由于云服务器没有开25端口,telnet不通(telnet smtp.163.com 25),允许一下25端口即可,如果不能启用25端口,则开启465或者587
- 【2】从零玩转OSS阿里云存储服务之Java代码操作-2-cong-ling-wan-zhuan-oss-a-li-yun-cun-chu-fu-wu-zhi-java-dai-ma-cao-zuo
title: [2]从零玩转OSS阿里云存储服务之Java代码操作 date: 2021-06-09 17:37:14.486 updated: 2021-12-26 17:43:12.779 url ...
- Vulntarget-b-wp
Vulntarget-b 环境配置 centos7 用户 密码 root root vulntarget root 宝塔Linux面板http://192.168.0.104:8888/045b276 ...
- Python——第五章:os模块、sys模块
os 模块 os 模块提供了很多允许你的程序与操作系统直接交互的功能 import os 得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录下的所有文件和目 ...
- 2023河南省第五届“金盾信安杯”CRYPTO MISC 复现
MISC 来都来了 题目 我的解答: 给了一个加密压缩包,010查看发现是伪加密,修改如下两部分: 头部和尾部的09分别改为00 然后解压得到: 尝试base64解码得到很零散的结果..大眼一看不知道 ...
- 合宙esp32 c3 micro python 固件配置(基于thonny)
首先,本文档是已经配置过其他esp32后发现合宙的配置需要修改一些地方. 为了让新手们减少掉坑成本,故做了一个图文指导. 准备工作: 1.thonny安装(不讲,自己去查教程) 2.esp32c3 m ...
- 云图说|云数据库MySQL内核小版本升级全攻略
摘要:华为云数据库MySQL支持自动或手动升级内核小版本,内核小版本的升级涉及性能提升.新功能或问题修复等. 华为云有新的内核小版本发布时,您可以在"实例管理"页面看到内核小版本升 ...
- 火山引擎云原生数据仓库 ByteHouse 技术白皮书 V1.0 (Ⅴ)
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 近日,<火山引擎云原生数据仓库 ByteHouse 技术白皮书>正式发布.白皮书简述了 ByteHou ...