突然看见打包 发现自己还不会,有些疑惑的地方想问问,请大家给讲讲!
一  jar   -cvf   目标文件.jar   源文件    这个名字我知道打包的命令,其中“目标文件”应该是我起的生成jar的名字, 源文件是要被打成包的文件。。
a问题 : 比方说源文件在 C:\concurrent 下,那么命令是不是应该是" jar   -cvf   concurrent.jar   C:\concurrent\ " 这样来写是否正确?
b问题 : C:\concurrent 文件夹下,是否一定要放编译好的.Class文件, 如果我放.java文件是不是不行?
c问题 : 我看网上讲的例子一般是文件夹下只有一个Class文件,是不是许多Class文件也应该是不受影响的 都会被打入包中?
d问题 : 网上有例子提到MANIFEST.MF 这个文件的作用,大致看了下,了解的不是很深,这个文件是不是一定要写?
例:
  Manifest-Version:   1.0   
  Created-By:   1.4.1_02   (Sun   Microsystems   Inc.)   
  Main-Class:   ScanIP  
e问题 : 1.这个文件的作用是什么? 
         2.Main-Class 是不是一定要有? 
         3.是不是我的这个C:\concurrent夹中一定要有一个是带有Main函数的?
         4.网络上有提高这个文件的时候提到“清单”一词,是不是要把C:\concurrent\文件夹中的所有Class文件名都写入MANIFEST.MF中,又该怎样的格式?
f问题 : 1.打包成功后的jar文件是不是默认生成到C:\concurrent\文件夹下?
         2.cmd命令提示框中是否有相应的提示成功?

解决方案 »

  1.   

    现在基本上都不用dos命令来打包jar文件了,现在eclipse提供了jigloo就提供了build to fat jar的功能,比dos命令好用的很。jigloo 现在的最新版本为4.5  自己在网上下载一个就行!
      

  2.   

    a.可以
    b.可以
    c.可以打包一个文件夹下的所有文件
    f.1.打包后的文件是放在命令行当前的路径下
      2.有的,-cvf  中的v就是显示信息的意思
      

  3.   

    哈哈 CSDN又出Bug了 大家看楼主的结贴率125%
    为结贴-4
    楼主可以看看这个
    http://www.javaeye.com/topic/147376
    http://www.javaeye.com/topic/280444#761087
      

  4.   

    Main-Class是配置主入口程序的类名,以方便双击运行
      

  5.   

    在cmd下输入jar就可以看到具体的命令作用,还有简单例子
      

  6.   

    LZ为什么一定要在命令行里打包啊 ?可以用Eclipse或者MyEclipse啊,方便快捷