java 生成可执行的JAR文件问题

在网上看了点教程.跟着做了.
但是不行~我把问题贴出来大家帮忙看看.
1、我的JAVA文件代码为:
package com.mawudong;

import java.io.PrintStream;

public class HelloWorld
{

public HelloWorld()
{
}

public void sayHello()
{
System.out.println("oh!\u8001\u864E!");
}

public static void main(String args[])
{
HelloWorld helloworld = new HelloWorld();
helloworld.sayHello();
}
}

com包放在E:\path\sample目录下,已经编译成CLASS文件了

2、manifest.mf文件放在E:\path\sample目录下,内容为
Manifest-Version: 1.0
Main-Class:com.mawudong.HelloWorld

HelloWorld后面的空格和回车都有

3、最后在cmd下面输入jar cvmf HelloWorld.jar manifest.mf com .

第三步执行后总是报ZipException异常。麻烦大家帮我看看!
根据 wg84cn说的试了下,可以了.但使用
java -jar HelloWorld.jar 运行的时候还是会提示
Failed to load Main-Class manifest attribute from HelloWorld.jar

进行到第三步时,请确认以下几点:
HelloWorld.class放在E:\path\sample\com\mawudong下;
E:\path\sample下没有HelloWorld.jar,有就删掉。

然后,在cmd下面输入 cd E:\path\sample
E:
jar cvmf HelloWorld.jar manifest.mf com
就可以了。

-->2008/04/10
manifest.mf文件内容格式不对,应为:
Manifest-Version: 1.0
Created-By: 1.7.0-ea (Sun Microsystems Inc.)
Main-Class: com.mawudong.HelloWorld

说明一下第二行参数,我的jdk是JDK7。所以是1.7.0,这个参数一定要和jdk版本一致。
先用jar cvf HelloWorld.jar com
生成HelloWorld.jar,再用WinRAR解开,在META-INF下会有个MANIFEST.MF。
将这个文件的内容的后面添加Main-Class: com.mawudong.HelloWorld,并另存为manifest.mf;
再jar cvmf HelloWorld.jar manifest.mf com
就可以了。

运行结果:
D:\Documents\NetBeansProjects\Util\build\classes>java -jar Pt2.jar
oh!老虎!
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-04-07
lz的命令使用错了,应该是:
jar cvfm HelloWorld.jar manifest.mf com/
第2个回答  2008-04-07
文件是可以直接用eclipse打成jar包的。
相似回答