我有一个相对简单的jar-with-dependencies是用Maven构建的,它比它看起来要大得多。它大约20MB,为了弄清楚占用了多少空间,我做了以下几点:
首先,我跑了mvn dependency:tree
。然后我在.m2缓存中检查了依赖关系树中每个jar的大小。如果我将所有这些尺寸加起来,它大约需要8MB。我怎样才能弄清楚其他12MB的来源?
我在浏览.m2时注意到的一件事是,对于许多依赖项,他们会有类似这样的事情:
total 5224
-rw-r--r-- 1 user 289B Jul 25 2016 _remote.repositories
-rw-r--r-- 1 user 1.7M Jul 25 2016 commons-compress-1.12-javadoc.jar
-rw-r--r-- 1 user 407B Jul 25 2016 commons-compress-1.12-javadoc.jar.lastUpdated
-rw-r--r-- 1 user 40B Jul 25 2016 commons-compress-1.12-javadoc.jar.sha1
-rw-r--r-- 1 user 427K Jul 25 2016 commons-compress-1.12-sources.jar
-rw-r--r-- 1 user 407B Jul 25 2016 commons-compress-1.12-sources.jar.lastUpdated
-rw-r--r-- 1 user 40B Jul 25 2016 commons-compress-1.12-sources.jar.sha1
-rw-r--r-- 1 user 432K Jul 22 2016 commons-compress-1.12.jar
-rw-r--r-- 1 user 407B Jul 22 2016 commons-compress-1.12.jar.lastUpdated
-rw-r--r-- 1 user 40B Jul 22 2016 commons-compress-1.12.jar.sha1
-rw-r--r-- 1 user 13K Jul 22 2016 commons-compress-1.12.pom
-rw-r--r-- 1 user 407B Jul 22 2016 commons-compress-1.12.pom.lastUpdated
-rw-r--r-- 1 user 40B Jul 22 2016 commons-compress-1.12.pom.sha1
什么是-sources和-javadoc jar?那些包含在我的超级罐子里吗?因为如果我的每个依赖项都使用-javadoc jar而不是标准jar,那么我会接近20MB。
答案 0 :(得分:1)
运行
jar tvvf <your_simple-jar-with-dependencies.jar>
或者,使用任何兼容zip的存档程序打开它,并检查内容以确定包含的内容。或者,使用-X
运行maven以获取更广泛的运行时信息。