开发者社区> 问答> 正文

请问如何找出java工程中多余的jar包?

请问如何找出java工程中多余的jar包?

现在工程中有很多多余的jar文件根本就没用到,请问有没有什么好的办法知道哪些jar是不需要的?

我知道的笨办法是:一个个的remove,如果编译不报错的话,应该就是不需要的,但是感觉这样

太笨了,希望能找到更好的办法,因为jar有好几百个

展开
收起
爵霸 2016-06-17 09:33:20 2698 0
1 条回答
写回答
取消 提交回答
  • 使用 Maven 来管理吧:

    1. Maven 对于重复引用自动处理
    2. Maven 可以处理传递依赖
    3. Maven 可以强制控制依赖版本(dependencyManagement)

    比如, 如果可以, 利用 pom 来首先管理上你的项目, 然后做第一次 jar 的清理工作, 将那些个有名的项目的 jar 按照 maven 坐标添加到依赖中, 然后再不断编译添加依赖这样循环操作, 直到完全编译通过.
    期间借助你熟悉的 IDE 或者工具来完成.

    但是利用 Maven 处理依赖的时候会有这样一个问题, 有的 jar 在早期的时候 Maven 坐标书写的不规范, 比如 groupId: statx, artifactId: statx-api 其实与 groupId: javax.xml.stream, artifactId: statxp-api 是一样的, 这个需要在依赖 groupId: statx 的依赖处使用 exclusions 来排除这样的依赖.

    2019-07-17 19:42:02
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载