方法一1、定位对于jar包的groupId 和artifactId2、执行mvn命令dependency:tree -Dverbose -Dincludes=org.mybatis:mybatis3、分析结果方法二1导出整体的依赖图2搜索jar包比如(mybaits)3一层一层网上找出依赖...
1. 前言
Java项目中经常会
引入
一些未使用的
Jar包
,会增大项目发布包体积,也可能会带来一些额外的维护成本。通过手工方式
查找
未使用的
Jar包
,是一件费时费力的事。
以下提供Linux环境shell脚本(编写环境为GNU bash, version 4.2.46(1)-release (x86_64-redhat-linux-gnu)),用于快速自动化
查找
Java项目
引入
但未使用的
Jar包
,以及
Jar包
中的
代码
相互之间的调用关系。
相关脚本可从以下地址下载:
https://github.com/Adrn
搭建项目配置文件的时候就在想,项目中如何判断哪些
jar包
应该被
引入
,那些
jar包
毫无意义需要被删除的?
网上找了些答案:基本上都是通过自己的实战经验来增删的,
Maven
+自己的经验实践总结就能最大限度的保证项目中不存在多余的包或者是自己一个一个的添加,根据报的错误,
查找
原因,补加对应的
Jar
这两类。
还有一些经验的总结,在此记下:
数据库:c3p0.
jar
(jdbcSpring)
详讲npm !
可能好多人一直在用npm ,却分不清npm到底干嘛的,每次装node时就自动把npm 装好了,那么它们到底什么关系呢 ?
别人问npm干嘛的,可能很模糊的回答一句用来装包的,那除了装一些包还
有没有
别的用处呢?
我这里为了让不懂npm的看懂写的很啰嗦,哈哈大佬可以选择性看
npm干嘛的 :
帮助你安装模块(包),自动安装依赖(是指假如你安装了jquery这个包,它会帮你自动安装好jquery中所依赖的其他包),管理包(增,删,更新,项目所有包),只是用来管理项目里所依赖的第三方包,并没有帮你管
声明:迁移自本人CSDN博客https://blog.csdn.net/u013365635
版本迭代过程中对
jar
的依赖可能会产生变化,一些本不必再依赖的
jar包
可以因为没有清除而依然留在版本的发布包中,这些多余的
jar包
一方面使得版本包变大,另一方对这些
jar包
的加载延长了系统启动时间,消耗了更多的虚拟机内存。所以清理这些无用的
jar包
是非常必要的。
使用 mvn dependency...
想要
查看
某个
jar包
的所有依赖,可以使用常用的构建工具如Apache
Maven
或Gradle,它们可以自动处理依赖关系并生成相应的构建文件。
对于使用
Maven
构建的项目,可以使用以下命令来
查看
某个
jar包
的所有依赖:
mvn dependency:tree -Dverbose -Dincludes=<groupId>:<artifactId>
其中,<groupId>和<artifactId>分别代表所需
查看
依赖的
jar包
的groupId和artifactId。
对于使用Gradle构建的项目,可以在项目根目录下的build.gradle文件中添加如下
代码
:
task printDeps {
doLast {
configurations.compile.resolvedConfiguration.resolvedArtifacts.each {
println it.moduleVersion.id
运行此任务时,将输出所有已解析的依赖项的moduleId。可以将其添加到需要
查看
依赖的
jar包
的依赖中。