如何分析class的依赖关系

我的程序里用了很多库(*.jar),但是往往只用到库中的部分内容。请问有没有什么工具能分析一下各个class之间的依赖关系,把程序里没有用到的库中的class给删掉?

学习了`以前也做过类似的,不过我是手动删除没用到的jar包。

我想说的是JAR包少了程序不能多运行多了的话还是可以跑跑的!

这个不太好区分。如果手动区分会碰到这样的问题,如果你引用的class文件,它又引用了库中的别的文件。这样就可能会出错。你的需要反编译一个一个去排除。

  不知道是否有这样的工具。
一个jar就几百K,何必呢,完全是吃力不讨好?

有些jar根本就没办法分清依赖关系,比如在一个接口包,名为a-api.jar,一个实现jar:a-impl.jar,在a-api.jar中有一个配置文件,或者通过path进行配置,动态读取类名,反射调用具体实现,此时此刻你要移除了a-impl.jar,岂不是出问题了

好象没有这样的工具。但有一个办法,把所有jar都删除,然后execute,根据产生的错误提示信息,一般是程序找不到运行所需的类。这样一步一步就看出各个类之间的关系了。不过有点麻烦,需要耐心。

你要是了解每个jar的含义就好办了,直接删除.因为自己做的东西肯定知道用到哪些第三方包了,
你如果用的是myeclipse的话 Ctrl + O 能列出所有的类,Ctrl + T 能列出所有的类结构~~

自己找用到的类 及关联的类吧 然后jar buildpath到你的项目中

使用maven的话
goal shade:shade
配置 minimizeJar 为true

官方不是有文档嘛 先看看官方的描述就知道了这些
来源:足球直播

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值