JAR包中MANIFEST.MF注意事项

1. Manifest-Version
    用来定义manifest文件的版本,例如:Manifest-Version: 1.0
2. Created-By
    声明该文件的生成者,一般该属性是由jar命令行工具生成的,例如:Created-By: Apache Ant 1.5.1
3. Signature-Version
    定义jar文件的签名版本
4. Main-Class
    定义jar文件的入口类,该类必须是一个可执行的类,一旦定义了该属性即可通过 java -jar x.jar来运行该jar文件。
5. Class-Path
    应用程序或者类装载器使用该值来构建内部的类搜索路径

注意事项:

1.文件最后必须要有个换行(建议2个换行),而且该行不能有空格

2.Manifest-Version、Main-Class和Class-Path后面跟着一个英文的冒号,冒号后面必须跟着一个空格,然后才是版本号、类和ClassPath

3.jar包内有些配置文件想放在jar包外面,比如文件config.properties:如果这个文件是以路径方式载入的,比如new file("./config/config.properties"),那么将config.properties放在jar包相同目录下的config目录下即可,也就是说“./”路径等价于jar包所在目录;如果这个文件是以ClassPath下的文件这种方式载入的,比如在Spring中载入classpath:config.properties,则在MF文件的配置文件的ClassPath中添加“./”,然后将这个配置文件与jar包放在同一个目录即可,当然也可以在MF文件的配置文件的ClassPath中添加“./config/”,然后把配置文件都放在jar包相同目录下的config目录下。

Class-Path的注意事项:

1.每行最多72个字符;

2.多个jar包用空格隔开;

3.如果需要换行,行首要有一个空格行尾也要有一个空格(一般是这样,例外情况如第4点注意事项);

4.如果行尾没空格,则该行与下一行的内容是连接起来的,如例子2中lib/dom4j-1.6.1.jar被拆分到了2行里,lib/dom4j-1.6后面是没有空格的,与.1.jar是直接连在一起组成一个jar包的。

例子1:

Manifest-Version: 1.0
Class-Path:  lib/bsf.jar 
 lib/log4j.jar 
 lib/dom4j-1.6.1.jar 
 lib/jakarta-oro-2.0.8.jar 
 lib/jaxen-1.1-beta-6.jar 
 lib/javascriptplugin.ZIP 
 lib/js.jar 
 lib/sopapi.jar 
 lib/sopdes.jar 
 lib/jakarta-regexp-1.5.jar 
 lib/commons-net-1.4.1.jar 
 lib/commons-pool2-2.4.2.jar 
 lib/log4j-1.2.17.jar 

 例子2:

Manifest-Version: 1.0
Class-Path:  lib/bsf.jar lib/log4j.jar lib/dom4j-1.6
 .1.jar lib/jakarta-oro-2.0.8.jar lib/jaxen-1.1-beta-6.jar lib/javascr
 iptplugin.ZIP lib/js.jar lib/sopapi.jar lib/sopdes.jar lib/jakarta-re
 gexp-1.5.jar lib/commons-net-1.4.1.jar

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值