【问题标题】:Two files with the same name in one jar [duplicate]一个jar中有两个同名文件[重复]
【发布时间】:2013-01-26 03:05:50
【问题描述】:

可能重复:
Each class has two classfiles in jar file

您好,我有一个 jar 文件,其中的文件共享相同的文件名:

    /ro/sv/base/Monkey.png

有人可以解释发生了什么吗?

我这里有罐子:[DELETED]

【问题讨论】:

  • jar 是如何创建的?
  • 如果您使用 java.util.zip API“手动”构建 JAR,您可以在其中放入任何您想要的文件组合。并且可能某些 zip 工具将允许您添加另一个名称与现有成员相同的成员。
  • 看起来路径实际上不同:ro/sv/base/Monkey.png/ro/sv/base/Monkey.png。一个是绝对的,一个是相对的。
  • @Banthar - 是的,我只是用十六进制查看它,但我不能确定,因为我没有查阅目录布局规范。不过,除了使用 java.util.zip 之外,不确定您将如何完成此操作。
  • aa.. 伙计们,您是如何看到这些差异的?

标签: java jar


【解决方案1】:

来自 Ant Jar 任务文档

请注意,zip 格式允许多个相同的文件 完全限定名称以存在于单个档案中。这已经 记录为对毫无戒心的用户造成各种问题。如果你 希望避免这种行为,您必须将重复属性设置为 不是默认值“add”。

简而言之,您可以在一个 .zip 文件中拥有多个具有相同完全限定名称的文件,这就是它的工作原理,如果您不想有这种行为,请不要添加第二个 .png。

【讨论】:

    猜你喜欢
    • 2015-01-04
    • 2021-06-04
    • 2012-12-05
    • 1970-01-01
    • 2016-12-21
    • 2014-01-18
    • 1970-01-01
    • 1970-01-01
    • 2012-11-12
    相关资源
    最近更新 更多