一、问题与解决方法叙述
存在以上两个文件,使用命令打包jar文件出现如下异常
在网上找了几个博客都说是MAINFEST.MF文件格式有无,检查了好几遍都没发现问题,后来灵机一定,觉得配置文件应该放在class文件的前面,一试果然好使
二、打包、运行jar文件的命令
打包:jar -cvf test.jar Demo.classjar -cvfm test.jar MANIFEST.MF Demo.class //注意MANIFEST.MF要放在最前面jar -cvfm test.jar MANIFEST.MF Demo.class com //com是文件夹运行:java -jar test.jar三、MANIFEST.MF文件配置注意事项
基本格式
Manifest-Version: 1.0Class-Path: Created-By: 1.6.0_06 (Sun Microsystems Inc.)Main-Class: com.demo.Demo注意:
每个标签冒号后都跟上一个空格
最后一行需要有一个回车键,否则后面那一行是不能打包进去的
总是以Manifest-Version属性开头
每行最长72个字符,如果超过的话,采用续行
确认每行都以回车键结束,否则改行将会被忽略
如果Class-Pass中存在路径,使用“/”分隔目录,与平台无关
使用空行分隔属性和package属性
使用"/"而不是"."来分隔package和class。比如com/example/myapp/
class要发.class结尾,package要以/结尾