是否有Java API来读取,解释和编写Java清单文件(MANIFEST.MF)?

时间:2012-03-29 14:27:43

标签: java api manifest

我使用ATG Dynamo平台 - 一个基于Java的平台,它使用清单文件来定义其模块的许多配置细节。

我想构建一些工具和脚本 - 比如ANT脚本或Maven插件 - 以编程方式操作这些文件。具体来说,我希望能够一方面根据内容读取现有文件并执行某些任务,另一方面在生成过程中生成新的清单文件。

MANIFEST.MF格式似乎非常简单,虽然有一些关于行长和空白的规则,所以我相信我可以手工编写很多这样的代码。但是,如果已经存在根据规范读取和写入此类文件的API,那将非常有用。

有什么建议吗?

3 个答案:

答案 0 :(得分:3)

使用JarFile#getManifest()。它为您提供了Manifest的实例,提供了几种方便的方法来访问属性。

JarFile jarFile = new JarFile(file);
Manifest manifest = jarFile.getManifest();
// ...

答案 1 :(得分:1)

除了上一个答案,您可以从清单到Package实例获取一些信息:

getClass().getPackage().getImplementationTitle(); // for example 

答案 2 :(得分:0)

不完全是用于读/写的API,而是用于读取类路径中可用的所有MANIFEST.MF文件的实用程序类:jcabi-manifests

此外,请参阅此帖子了解更多详情:http://www.yegor256.com/2014/07/03/how-to-read-manifest-mf.html