【问题标题】:What is use of MANIFEST.MF in WAR/JAR/EAR?WAR/JAR/EAR 中的 MANIFEST.MF 有什么用?
【发布时间】:2012-06-23 18:36:27
【问题描述】:

我知道 MANIFEST 文件在移动应用程序中的用法,但不知道在 Java 应用程序中的用法。

我的猜测是,它仅用于保留 BUILD 信息。我说的对吗?

这是强制性的吗?如果不是,那么我们可以从中获得哪些主要好处?

【问题讨论】:

标签: java manifest.mf


【解决方案1】:

manifest.mf 带有工件的属性。最著名的一类是 jar 的主类,它用于在未指定其他类时启动 jar 文件。语法:

Main-Class: classname

其他用途是,例如,包密封和包版本控制。查看有关它的java教程: http://docs.oracle.com/javase/tutorial/deployment/jar/manifestindex.html

jar 中的清单通常包含比AndroidManifest.xml 少得多的信息。它非常轻巧,并且包含任何构建或打包信息。

这是因为java没有好的模块系统。因此,一个 jar 不是一个可能需要大量配置信息的模块(比如它所依赖的模块列表)。相反,一个 jar 只是一堆带有一些配置信息的类。希望这将由 project jigsaw (http://openjdk.java.net/projects/jigsaw/) 解决。

【讨论】:

  • 现在我的清单文件类似于“Manifest-Version: 1.0”。我的应用程序仍然运行良好。
  • 当然,mainfest 不是必须的。它只是能够携带有关 jar 的附加信息。
  • 我想在这里做一个比较,就像在移动应用程序中一样,没有它应用程序将无法运行,但Jar等情况并非如此,为什么?
  • 简单回答:java 编程语言不需要它:)。你说的是什么移动平台?
  • 不要太多。除非您完全需要教程中描述的内容之一,否则您无需考虑编写清单。与android相比,它更轻量级,它只包含一些可选配置信息,不多。
猜你喜欢
  • 1970-01-01
  • 2014-12-02
  • 1970-01-01
  • 1970-01-01
  • 2013-02-27
  • 2013-09-05
  • 1970-01-01
  • 2015-02-14
  • 1970-01-01
相关资源
最近更新 更多