【发布时间】:2016-03-22 19:59:41
【问题描述】:
我遵循Reading my own Jar's Manifest 指南以编程方式获取清单条目。
我正在使用 maven-assembly-plugin 构建 jar 文件。清单文件位于 jar 文件内的META-INF/MANIFEST.MF。
问题是无论如何我都会得到空条目。我尝试使用 JarFile 加载,使用 ClassLoaderResources 没有效果。
但是如果在 pom 文件中添加额外的条目,那么如果它们在单独的部分(用额外的换行符分隔),我可以读取这些条目。
如果我将条目添加到主要属性部分,那么它们是不可见的。
是否有可能出于某种安全原因以编程方式读取 manifest.mf 文件被禁用?
【问题讨论】:
-
你为什么使用 maven-assembly-plugin 而不仅仅是 maven-jar-plugin?
-
它非常强大。我需要一个罐子。
-
奇怪的事情发生了。我读了清单,发现它是空的,然后将其转储到文件中。文件包含所有条目。我试图从文件中读取清单文件,结果相同,在内存中显示为空
-
离题:插件有不同的用途。 maven-assembly-plugin 主要用于将各种不同的文件捆绑到单个 zip(或 tar 或任何其他支持的存档器)中以进行分发。如果你想要一个 jar,请使用 maven-jar-plugin。如果你想要一个胖客户端 jar,请使用 maven-shade-plugin。
标签: java maven maven-assembly-plugin