为什么我的罐子这么大?

时间:2017-04-05 01:42:44

标签: java maven

我有一个相对简单的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。

1 个答案:

答案 0 :(得分:1)

运行

jar tvvf <your_simple-jar-with-dependencies.jar>

或者,使用任何兼容zip的存档程序打开它,并检查内容以确定包含的内容。或者,使用-X运行maven以获取更广泛的运行时信息。