【发布时间】:2013-11-26 06:06:20
【问题描述】:
我有一个结构如下的 JAR 文件:
com
-- pack1
-- A.class
-- pack2
-- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA.class
当我尝试读取、提取或重命名pack2/AA...AA.class(文件名长度为 262 字节)时,Linux 和 Windows 都说文件名太长。在 JAR 文件中重命名也不起作用。
任何想法如何解决这个问题并使长类文件可读?
【问题讨论】:
-
向我们展示您要“读取、提取或重命名”的代码。至少在 Linux 上,它应该可以工作。
-
@AaronDigulla 谢谢。你的意思是什么代码?我尝试通过
GNOME Archive Manager、unzip、jar -xvf、7zip、WinZIP、WinRAR等传统应用程序读取、提取和重命名。 -
至少
jar -xvf应该在 Linux 中工作。由于文件名的 256 字节限制(除非您使用一些新的文件 API,否则整个路径为 1024),Windows 工具可能无法处理它。 Linux 上的哪个文件系统? -
Linux 上的文件系统是
ext4。jar -xvf不起作用。它甚至不显示错误消息(尽管给出了-v选项)
标签: linux windows jar filenames long-filenames