从https://dzone.com/articles/java-8-how-to-create-executable-fatjar-without-ide
tar xf ExecutableOne.jar
但为什么我得到
$ tar xf ExecutableOne.jar
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors
谢谢。
答案1
jar 文件是 Java 存档,而不是可以提取的 tarball。您可以安装 jar 或 java 并提取文件(或使用 7-Zip),但不能使用 tar 提取它们。
答案2
bsdtar
tar(1)
(这是FreeBSD 上的常规,并且可以在 Linux 上轻松安装)可以.jar
透明地提取 s 以及许多其他存档格式。
.jar
s 基本上是.zip
文件。
答案3
如果您年纪大了还记得的话,它曾经工作得很好(至少在 Solaris 上):您可以使用 tar 枚举并提取 .jar 文件的内容。它对于双重检查目标系统上是否存在特定的 .class 文件非常方便,而您通常没有部署开发人员工具。