前几天在对JAVA文件打包成jar包时,遇到一些问题,至今未能解决,记录下来,还望大家指教。
在将多个CLASS文件打包成jar包时,比如我要把放在/mysoft/bin目录下的类文件都打包到一个jar包,编写myMANIFEST.MF文件,里面的内容是对Main-Class:的指定,比如我要指定的是MainClass,然后编写的内容是Main-Class: MainClass,并把它放在/mysoft,当前目录也是它,然后运行jar cvfm test.jar myMANIFEST.MF -C bin/ .。但是生成之后的jar包并不能执行。
然后我打开jar包,发现里面的类文件被放在目录bin/./下,我很奇怪的是生成了一个“.”的目录,不知为何因。而在执行命令时,少了最后的一个点是不能打包的。我修改了mf文件,重新指定为Main-Class:bin/./MainClass,或是作其它的路径修改,就是无法运行。最后只能沮丧地把bin/./的类文件都删去,然后重新把那些类添加到jar包的根目录下,mf文件的主要内容还是一开始的Main-Class:MainClass,这样才能运行。
我不知道是不是自己的操作方法有误。如果不是的话,对jar命令中提供将同一目录下的class文件打包到一个jar包的方法我就感到很纠结了,还不如先把一个类文件打包进去,然后用压缩软件打开,再把其它文件拖进去呢。不然还有什么办法呢?
此问题已解决,见http://blog.csdn.net/maosidiaoxian/article/details/6521139