Java jarInputStream.getManifest()为空

Java jarInputStream.getManifest()为空,java,reflection,jar,reflections,Java,Reflection,Jar,Reflections,当我将jar文件上载到servlet并尝试读取其清单时。getManifest()返回null JarInputStream JarInputStream=新的JarInputStream(inputStream) Manifest mf=jarInputStream.getManifest() 当我读取提供绝对路径的JarFile时,我得到了jar的清单 我需要在运行时读取jar文件的清单。。当它被上传时 如有任何建议,我们将不胜感激 您正在使用java 1.4吗? 看看这个,使用ant脚本打

当我将jar文件上载到servlet并尝试读取其清单时。getManifest()返回null

JarInputStream JarInputStream=新的JarInputStream(inputStream)

Manifest mf=jarInputStream.getManifest()

当我读取提供绝对路径的JarFile时,我得到了jar的清单

我需要在运行时读取jar文件的清单。。当它被上传时

如有任何建议,我们将不胜感激

您正在使用java 1.4吗?
看看这个

,使用ant脚本打包jar,为清单提供自定义属性,这有助于成功获取清单

之前我使用eclipse>export>java>java归档打包jar 在清单是默认的情况下,编辑这个导出jar的清单似乎是问题的原因


感谢@EJP和@Burkhard对我的问题的快速回复

更重要的是,您使用的是索引JAR文件吗?这个bug被标记为“未解决”,所以Java版本不会出现在其中。我使用eclipse juno为我的项目导出jar,我在64位windows机器上使用jdk1.6.30@EJP我并没有显式地选择任何用于生成索引JAR的配置。起初,我只是简单地使用了zip和一个定制的MANIFEST.MF。然后用ANT创建jar和清单就如预期的那样工作了。