我编写的应用程序使用了几个第三方jar包。有时只会使用整个50kB到1.7mB jar包中的一小部分 - 一个或两个函数调用或类。
如何最好地减小jar大小?我应该下载源代码并构建只包含所需类的jar包吗?有哪些现有工具可以帮助自动化此过程(例如,我简要查看了http://code.google.com/p/jarjar/)?
谢谢
编辑1: 我想降低我的第三方'official' jar包的大小,比如swingx-1.6.jar(1.4 MB),set-3.6(1.7 MB),glazedlists-1.8.jar(820kB)等,以便它们只包含我需要的最少类
编辑2: 如果库使用反射,则手动或使用类似proguard的程序最小化jar会更加复杂。 Injection with google guice does not work anymore after obfuscation with proguard
另一个帖子上cletus给出的答案非常好:如何确定Java程序使用哪些类?