建立一个新文件夹,写一个java文件,用javac编译后生成.class文件,新建一个名为“manifest”的文件(可以不用后缀名也可加.mf后缀,若建立了包则将该文件与java文件放在同一目录下),内容为:Main-Class: 类名,其中冒号与类名之间一定要有一个空格,这是java规范,若该类属于某一个包,则戏称Main-Class: 包名.类名。特别要注意一点的是在类名后一定要按回车键,使光标移动到下一行,不然在运行jar包时会提示缺少主清单属性。
然后再命令窗口中键入命令:jar -cvfm jar文件名.jar manifest(或manifest.mf) class文件名.class ,这样即可生成jar文件。若有多个class文件,必须将所有所有class文件列出(如A.class B.class ... 两两之间加空格),否则虽然仍可生成jar文件,但运行时会出错。若将class文件放在了包下,则列class文件时写出每个class文件路径(如包名\A.class),
如果嫌麻烦,可写包名\*,如此会将所有class文件打包
此时,就可以将打包后“week9.jar”文件发布给任何安装了Java运行时环境jre 的计算机了,若在我们机器上双击该文件的图标不能运行该文件,可以为Windows系统下的计算机再新建一个名为“week.bat”(文件名可随意)的批处理文件,内容为“java –jar week9.jar”,具体如下图:
最后,需要将“week9.jar”、 “week.bat”放在同一个目录下(如果不想放在同一目录下,那么.bat文件里面的在写java命令时就应该给出具体要运行的java类的路径了),然后双击“week.bat”文件即可运行该GUI程序了。
若在程序中引用了第三方包,
将需要的第三方的jar包,复制在同可执行jar所在的目录或某个子目录下,修改Manifest 文件
在Manifest.mf文件里加入如下行
Class-Path: 可执行jar文件目录\第三方包所在文件夹\第三方包.jar(冒号后边一定要有空格,否则会打包失败)
如:
Class-Path: newjar/jl1.0.1.jar
Main-Class: musicV_1.music