JAR文件可以可选地在META-INF目录中包含名为MANIFEST.MFManifest文件。Manifest文件包含有关JAR文件及其条目的信息。Manifest文件可以包含有关JAR文件的CLASSPATH设置及其主条目类的信息。

主条目类是具有启动独立应用程序的main()方法的类,包的版本信息等。

manifest文件被分成由空白行分隔的部分。每个部分包含名称 - 值对。 一个新行分隔每个名称/值对。冒号分隔名称及其对应的值。

清单文件必须以新行结束。以下是样本清单文件:

1
2
3
4
Manifest-Version: 1.0
Created-By: 1.8.0_20-ea-b05 (Oracle Corporation) 
Main-Class: cn.sxt.Main
Profile:  compact1

上面的manifest文件有一个具有四个属性的部分:

  • Manifest-Version

  • Created-By

  • Main-Class

  • Profile

Jar清单文件中的部分

manifest文件中有两种类型的部分:主部分和各个部分。

空行必须分隔任何两个部分。主部分中的条目适用于整个JAR文件。单个部分中的条目适用于特定条目。

单个部分中的属性覆盖主部分中的相同属性。单个条目以“Name”属性开头,其值是JAR文件中条目的名称,后面是该条目的其他属性。

 点击链接查看详细内容

Java Jar Manifest的更多相关文章

  1. org.codehaus.plexus.archiver.jar.Manifest.write(java.io.PrintWriter)

    通过start.spring.io下载maven工程导入eclipse后,出现pom文件错误: org.codehaus.plexus.archiver.jar.Manifest.write(java ...

  2. pom.xml错误:org.codehaus.plexus.archiver.jar.Manifest.write(java.io.PrintWriter)的解决方法

    pom.xml文件在添加了新的依赖后,一直报:org.codehaus.plexus.archiver.jar.Manifest.write(java.io.PrintWriter)的错误,Maven ...

  3. Java jar命令 常见用法

    一.jar命令作用: 进行打包 -- 把多个文件打包成一个压缩包 -- 这个压缩包和Winzip的压缩格式是一样的. 区别在于jar压缩的文件默认多一个META-INF的文件夹,该文件夹下包含一个Ma ...

  4. jar MANIFEST.MF 汇总

    : Manifest-Version: 1.0Created-By: Apache Ant 1.5.1Extension-Name: Struts FrameworkSpecification-Tit ...

  5. java jar

    http://www.cnblogs.com/shirui/p/5270969.html Java之 将程序打包成jar包   准备材料: 1.java文件: Helloworld.java pack ...

  6. -Xbootclasspath参数、java -jar参数运行应用时classpath的设置方法

    当用java -jar yourJarExe.jar来运行一个经过打包的应用程序的时候,你会发现如何设置-classpath参数应用程序都找不到相应的第三方类,报ClassNotFound错误.实际上 ...

  7. Maven可以使用mvn package指令对项目进行打包,如果使用Java -jar xxx.java

    Maven可以使用mvn package指令对项目进行打包,如果使用Java -jar xxx.jar执行运行jar文件,会出现"no main manifest attribute, in ...

  8. java -cp & java jar的区别

    java -cp java -cp 和 -classpath 一样,是指定类运行所依赖其他类的路径,通常是类库和jar包,需要全路径到jar包,多个jar包之间连接符:window上分号“;”.Lin ...

  9. Android系统执行Java jar程序 -- dalvik运行dex Java工程

    本文仅针对纯java工程执行进行诠释,一般在PC平台作为jar包形式存在,在Android平台则以dex包形式存在. Java属于高级程序语言,Java程序需要运行在特定的虚拟机中,虚拟机将Java字 ...

随机推荐

  1. 56、salesforce学习笔记(三)

    Date类型 Datetime nowDatetime = Datetime.now(); Datetime datetime1 = Datetime.newInstance(2015,3,1,13, ...

  2. javaScript 通过location对象获取项目的url

    项目中有些要通过jQuery 动态加载,其中需要一些路径,使用相对路径会出现错误,报 $("#t1").html("设置或返回从井号 (#) 开始的 URL(锚)---& ...

  3. JWT工具类

    package com.ynhrm.common.utils; import io.jsonwebtoken.Claims;import io.jsonwebtoken.JwtBuilder;impo ...

  4. java 并发——CountDownLatch

    java 并发--CountDownLatch 简介 public class CountDownLatch { private final Sync sync; private static fin ...

  5. Uva10817_Headmaster's Headache

    大致题意就是: 一个学校招聘人,自带老师m个,n个求职的人,需要讲授s个课程,已经知道了每个人工资,问怎么才能让各科至少有两个老师(自带的必须要) 这题刚看的时候大概知道是要状态转移,可问题是,状态转 ...

  6. SpringBoot扫描不到类,注入失败A component required a bean of type 'XXService' that could...

    SpringBoot项目的Bean装配默认规则是根据Application类所在的包位置从上往下扫描! “Application类”是指SpringBoot项目入口类.这个类的位置很关键: 如果App ...

  7. 程序性能优化之APK大小优化(六)下篇

    阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680 本篇文章将继续从微信资源混淆AndResGuard原理来介绍AP ...

  8. TreeMap源码解析笔记

    常见的数据结构有数组.链表,还有一种结构也很常见,那就是树.前面介绍的集合类有基于数组的ArrayList,有基于链表的LinkedList,还有链表和数组结合的HashMap,今天介绍基于树的Tre ...

  9. Codeforces 488C Fight the Monster

    Fight the Monster time limit per test             1 second                                   memory ...

  10. 在egg中配置 sequelize

    如何在eggjs中引入 sequlize 安装 第一步,在项目中安装 egg-sequelize插件和mysql插件 npm install --save egg-sequelize mysql2 第 ...