这里有一个,可以参考一下
http://www.ccw.com.cn/htm/center/prog/02_8_23_5.asp
不过一般都不用这样做,自己写个exe包装起来就可以了阿.
MANIFEST.MF文件是建立jar文件需要提供的.
http://www.ccw.com.cn/htm/center/prog/02_8_23_5.asp
不过一般都不用这样做,自己写个exe包装起来就可以了阿.
MANIFEST.MF文件是建立jar文件需要提供的.
* @(#) Test.java
* Copyleft (c) 2002 RatKing
* @author <a href="[email protected]">RatKing</a>
* @version 0.1, 2002-11-7
* 描述:一个测试用的Java Application
*/
public class Test extends JFrame {
public Test(String title) {
super(title);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.getContentPane().add(new JLabel("测试!", JLabel.CENTER), SwingConstants.CENTER);
this.pack();
} public static void main(String[] args) {
try {
//UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch(Exception e) {
e.printStackTrace();
}
Test t = new Test("Test - 测试");
t.setVisible(true);
}
}二、编译Test.java为Test.class(当然假设你事先已经设置好了JDK的环境变量PATH和CLASSPATH)
在命令行执行编译命令:
javac Test.java三、用文本编辑器(比如记事本/UltraEdit等 - 甚至用ECHO命令加管道“>>”)编写如下manifest文件,并保存为abc.txtManifest-Version: 1.0
Main-Class: Test【注意】文件abc.txt内必须是3行文本:
第一行的内容依次是:“Manifest”、英文减号、“Version”、英文冒号、英文空格、数字“1”、英文句号、数字“0”
第二行的英文冒号与Test之间必须要有一个英文空格!!!
第三行是一个空行,也就是说,你要在Test之后键入一个回车,然后才可以存盘退出!!!
如果冒号后面没有空格,可以生成jar文件但不能执行;如果Test后没有回车符,则生成jar文件时会报错。四、将Test.class打包成.jar文件,并使用abc.txt指明哪一个是带有public static void main()的“主函数”
在命令行执行编译命令:
jar cvfm Test.jar abc.txt *.class你可以使用WinZip之类的解压软件看一看刚刚生成的Test.jar文件里到底有什么。五、用鼠标双击Test.jar的图标,应该可以看到Test执行后的窗口。〖说明〗如果你正确地安装了Java运行环境(JRE),那么.jar的图标应该是象一页纸并有一个A的形状,就如同写字板的图标。
如果你的.jar文件默认的打开关联不对,可以重新设置:
我的电脑->查看(Win9x)或工具(Win2k)->文件夹选项->文件类型->选择JAR文件->编辑该类型文件的属性->操作栏填入[ open ](不填引号和中括号[]),并在“执行操作的应用程序”栏填入[ "C:\Program Files\Java\j2re1.4.1\bin\javaw.exe" -jar "%1" %* ](填两对英文引号,不填[])
并按“确定”、“关闭”退出对.jar文件关联的编辑。
(你的javaw.exe文件是不是位于C:\Program Files\Java\j2re1.4.1\bin\路径下,视你自己电脑的情况而定)
首先表示感谢。
你的方法对于你的那个程序来说完全正确,但是对于我的hello.java生成的.jar文件好像双击过后没有反应,是闪的太快呢?还是其它地方出错?请再指点!
start javaw your.jar
假如用 yslfwww(阿澈) 的办法,好像会出现“could not found main class,program will exit”的字样;
解包Hello.jar文件,里面的内容如下:
Hello----- Hello.class
|____META-INF-----MANIFEST.MF
打开MANIFEST.MF,内容如下三行所示:
Manifest-Version: 1.0
Created-By: 1.4.1_02 (Sun Microsystems Inc.)
Main-Class: Hello请问以上存在什么问题,很想搞清楚这个问题,请指教!
Manifest-Version: 1.0
Main-Class: Test
Classpath: .\Test.jar
我试过!!!
1. jar cvf run.jar Hello.class
2. 解压run.jar
3.将其中的manifest.mf文件,加入一句:Main-Class: Hello
4.在
jar cvfm run.jar manifest.mf *
5.双击run.jar 哈可以运行了
加入java Hello把文件名a.txt改为Hello.bat双击Hello.bat.
你前面那个办法好像行不通,后面那个办法失去了意义
本来作.jar的目的是让用户可以直接运行拿到手中的程序,只要装有JRE
你做.BAT的那个办法不但.BAT和.CLASS必须一同存在而且用户必须装JDKTO: yuan320(球星)
你的那个办法解压run.jar时解压在那个地方,比如说解压在.\run目录下,那改后的MANIFEST.MF应放在哪里? 覆盖原文件吗?但是覆盖之后生成的run.jar也是双击也没有什么反应!
Manifest-Version: 1.0
Main-Class: Test
Classpath: .\Test.jar
我试过!!!
多谢你的积极回复,不过你那个办法我试过,还是不行啊!
跟系统有关系吗?我用的WINXP