java - 是否可以使用 pack200 创建可执行 jar?

标签 java jar

我正在开发的应用程序有一个大约 7MB 的可执行 jar。当我使用 pack200 工具对其进行归档时,tar.gz 文件的大小仅为 2MB。

有没有办法使这个 .tar.gz 文件可执行(不使用 JNLP)?也就是说,用户应该能够使用简单的命令启动应用程序,例如:java -jar xyz.jarjava -jar xyz.tar.gz

在pack200上搜索了很长时间,我只能在JNLP上下文中找到信息。

最佳答案

使用gz选项时,它应该可以工作,通过以下命令创建的jar文件应该可以与java -jar一起正常工作:

pack200 -r -G compressed.jar uncompressed.jar

但是通过以下命令创建的 .gz 文件可能无法与 java -jar 一起使用:

pack200 compressed.jar.gz uncompressed.jar

-r 是重新打包 jar,-G 是去除调试信息。它们确实提供了一些压缩,但不如 gz 选项提供的那么多。

如果您出于某些原因(包括使您的 jar 可供下载)必须使用 .gz 选项来减小大小,那么客户端(下载您的 jar 的人)可以解压并使用它,例如 Eclipse 更新就是这样工作的!

有关 pack200 的更多信息 here

关于java - 是否可以使用 pack200 创建可执行 jar?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31494381/

相关文章:

java - 仅推送 src 文件

java - 对类似方法使用泛型

java - 可运行 JAR 不适用于引用的库

java - 我在哪里可以下载 org.apache.http 包的 jar?

php - CCAvenue 交易 - 整合

java - 为什么我的游戏在 Linux 上运行良好,但在 Windows 上运行不正常? (Java.jar)

android - 我在哪里可以获得 JAR 来导入 libcore.io?

java - 如何远程下载最新的JDK8

java - 我觉得很难产生回溯的想法,请问我可以寻求帮助吗?

java - 在面板内绘制图像