1

我找不到太多关于为什么在包上使用较短的名称或使用未命名的包(默认包)实际上会使 jar 大小更小的信息。

我已经阅读了混淆器去除未使用的类并使剩余类的名称更小,这减少了 jar 的大小。我实际上已经亲自尝试过,通过在我的一个应用程序中使用未命名的包,我的文件大小减少了 1.2%。但是我找不到任何关于为什么会发生这种情况的可靠信息。我只能假设这是因为长名称引入的开销。我仍然会很感激有关如何证明这一点的任何提示。

最初我从这份文件中得到了这个想法:http: //carfield.com.hk/document/java/articles/Efficient_MIDP_Programming.pdf

它真的没有解释为什么。

4

1 回答 1

1

Jar 文件是具有另一个扩展名和一个名为 META-INF 的特殊(和可选)文件夹的 Zip 文件。对于每个文件或文件夹,都有一个相关联的标题。由于标头占用了 jar 的一些空间,因此您最好在其中保留较少的文件,但如果您已经将其降至最低限度,则将所有这些文件保留在根目录中。

对于 MIDlet 分发,jar 文件必须有 META-INF 文件夹,因此,为了获得最佳空间利用,您的 jar 文件应该只有这个文件夹。您的 MIDlet 和所有其他类应该在默认包中。与资源文件相同,将它们全部保存在文件根目录下。

http://smallandadaptive.blogspot.com.br/2008/09/keep-it-flat.html所示

于 2013-05-03T15:31:10.017 回答