文档章节

Java拾遗(Manifest)

赵-猛
 赵-猛
发布于 2017/02/26 11:25
字数 724
阅读 0
收藏 0

一般属性
  1. Manifest-Version
  用来定义manifest文件的版本,例如:Manifest-Version: 1.0
  2. Created-By
  声明该文件的生成者,一般该属性是由jar命令行工具生成的,例如:Created-By: Apache Ant 1.5.1
  3. Signature-Version
  定义jar文件的签名版本
  4. Class-Path
  应用程序或者类装载器使用该值来构建内部的类搜索路径

Application属性
  1. Main-Class
  定义jar文件的入口类,该类必须是一个可执行的类,一旦定义了该属性即可通过 java -jar x.jar来运行该jar文件。

Applet属性
  1. Extendsion-List
  该属性指定了小程序需要的扩展信息列表,列表中的每个名字对应以下的属性
  2. <extension>-Extension-Name
  3. <extension>-Specification-Version
  4. <extension>-Implementation-Version
  5. <extension>-Implementation-Vendor-Id
  6. <extension>-Implementation-URL

扩展标识属性
  1. Extension-Name
  该属性定义了jar文件的标识,例如Extension-Name: Struts Framework

包扩展属性
  1. Implementation-Title    定义了扩展实现的标题
  2. Implementation-Version    定义扩展实现的版本
  3. Implementation-Vendor    定义扩展实现的组织
  4. Implementation-Vendor-Id    定义扩展实现的组织的标识
  5. Implementation-URL :    定义该扩展包的下载地址(URL)
  6. Specification-Title    定义扩展规范的标题
  7. Specification-Version    定义扩展规范的版本
  8. Specification-Vendor    声明了维护该规范的组织
  9. Sealed    定义jar文件是否封存,值可以是true或者false

签名相关属性
  Name: javax/mail/Address.class
  Digest-Algorithms: SHA MD5
  SHA-Digest: AjR7RqnN//cdYGouxbd06mSVfI4=
  MD5-Digest: ZnTIQ2aQAtSNIOWXI1pQpw==
  这段内容定义类签名的类名、计算摘要的算法名以及对应的摘要内容(使用BASE64方法进行编码)

自定义属性
  除了前面提到的一些属性外,你也可以在MANIFEST.MF中增加自己的属性以及响应的值,例如J2ME程序jar包中就可能包含着如下信息
  MicroEdition-Configuration: CLDC-1.0
  MIDlet-Name: J2ME_MOBBER Midlet Suite
  MIDlet-Info-URL: http://zhaomeng.me
  MIDlet-Icon: /icon.png
  MIDlet-Vendor: Midlet Suite Vendor
  MIDlet-1: mobber,/icon.png,mobber
  MIDlet-Version: 1.0.0
  MicroEdition-Profile: MIDP-1.0
  MIDlet-Description: Communicator

Manifest 技巧:
  文件的冒号后面必须要空一个空格,否则会出错
  文件的最后一行必须是一个回车换行符,否则也会出错
  总是以Manifest-Version属性开头
  每行最长72个字符,如果超过的化,采用续行
  确认每行都以回车结束,否则改行将会被忽略
  如果Class-Path 中的存在路径,使用"/"分隔目录,与平台无关
  使用空行分隔主属性和package属性
  使用"/"而不是"."来分隔package 和class ,比如 com/example/myapp/
  class 要以.class结尾,package 要以 / 结尾
  Class-Path指定需要的jar,多个jar必须要在一行上,多个jar之间以空格隔开
  Class-Path不能使用jar中jar
 

© 著作权归作者所有

上一篇: MySQL(Plugins)
下一篇: Scrum(Story)
赵-猛
粉丝 6
博文 824
码字总数 501447
作品 0
深圳
技术主管
私信 提问
noteless的博客导航页 所有文章的导航页面

导航 《spring springmvc mybatis maven 项目整合示例系列-导航页》 《JAVA 基础知识点拾遗系列 JAVA学习 -1层 导航页》 《计算机软硬件发展系列个人理解与总结-导航页》...

noteless
2018/06/29
0
0
利用java代码实现java源文件的编译和打包为jar文件

一、编译部分 [java] view plaincopy public void complier() throws IOException { System.out.println("*** --> 开始编译java源代码..."); File javaclassDir = new File(javaClassPath);......

Zero零_度
2015/10/29
142
1
centos安装weblogic,启动报错

我在虚拟机的centos上安装了weblogic,并新建的域,都成功了,但启动的时候有报错。我的weblogic版本是10.3.5 ,jdk是1.7. 哪位大神遇到过,求解答!!! JAVA Memory arguments: -Xms512m -X...

YesI_Du
2016/06/22
363
1
linux下查看监听端口对应的进程

方法一 1.通过lsof命令查看PID ipv4 [root@test proc]# lsof -Pnl +M -i4 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME java 1419 1401 10u IPv4 6793357 TCP *:8453 (LISTEN) Autonomy......

Carl_
2014/09/28
2K
0
Java Agent -- Instrumentation

1 Instrumentation简介 使用 Instrumentation,开发者可以构建一个独立于应用程序的代理程序(Agent),用来监测和协助运行在 JVM 上的程序,甚至能够替换和修改某些类的定义。有了这样的功能...

素雷
03/01
11
0

没有更多内容

加载失败,请刷新页面

加载更多

golang-字符串-地址分析

demo package mainimport "fmt"func main() {str := "map.baidu.com"fmt.Println(&str, str)str = str[0:5]fmt.Println(&str, str)str = "abc"fmt.Println(&s......

李琼涛
今天
4
0
Spring Boot WebFlux 增删改查完整实战 demo

03:WebFlux Web CRUD 实践 前言 上一篇基于功能性端点去创建一个简单服务,实现了 Hello 。这一篇用 Spring Boot WebFlux 的注解控制层技术创建一个 CRUD WebFlux 应用,让开发更方便。这里...

泥瓦匠BYSocket
今天
6
0
从0开始学FreeRTOS-(列表与列表项)-3

FreeRTOS列表&列表项的源码解读 第一次看列表与列表项的时候,感觉很像是链表,虽然我自己的链表也不太会,但是就是感觉很像。 在FreeRTOS中,列表与列表项使用得非常多,是FreeRTOS的一个数...

杰杰1号
今天
4
0
Java反射

Java 反射 反射是框架设计的灵魂(使用的前提条件:必须先得到代表的字节码的 Class,Class 类 用于表示.class 文件(字节码)) 一、反射的概述 定义:JAVA 反射机制是在运行状态中,对于任...

zzz1122334
今天
5
0
聊聊nacos的LocalConfigInfoProcessor

序 本文主要研究一下nacos的LocalConfigInfoProcessor LocalConfigInfoProcessor nacos-1.1.3/client/src/main/java/com/alibaba/nacos/client/config/impl/LocalConfigInfoProcessor.java p......

go4it
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部