Jcat
宠辱不惊,闲看庭前花开花落~~
posts - 173,comments - 67,trackbacks - 0

1. workdir=learnJar

目录结构
+ learnJar
 | mf.mf
 |+ test
   | Test.java
 
2. workdir>javac test\Test.java

+ learnJar
 | mf.mf 
 |+ test
   | Test.java
   | Test.class

3. workdir>jar cvfm a.jar mf.mf test\Test.class

+ learnJar
 | mf.mf
 |+ test
   | Test.java
   | Test.class
 |+ a.jar
   |+ META-INF
     | MANIFEST.MF
   |+ test
     | Test.class

 4. workdir>java -jar a.jar
hello world


NOTE
1. manifest.mf可以放在任何位置,也可以是其它的文件名(反正最后jar中的文件名会被自动变为MANIFEST.MF)
2. "Manifest-Version: 1.0"--该行(以及其它行)冒号后面必须是个空格,否则jar时出错"invalid header field"
3. "Main-Class: test.Test<回车>"--该行必须以一个回车符结束,否则无效。
4. 如果是有UI的程序双击jar文件即可运行。(如果安装了winrar等压缩软件,jar文件会被关联,因此,双击时并不会执行jar程序,而是调用压缩软件来打开jar文件,这时,将jar的关联去掉即可)

Appendix
Test.java

package  test;

import  javax.swing. * ;

public   class  Test  extends  JFrame {
    
public   static   void  main(String[] args) {
        Test impl
= new  Test();
        JLabel label 
=   new  JLabel( " hello world " );
        impl.add(label);
            impl.pack();
        impl.setVisible(
true );
    }

}

mf.mf
Manifest-Version: 1.0
Main
-Class: test.Test
<回车>
posted on 2006-06-19 22:45 Jcat 阅读(1546) 评论(2)  编辑  收藏 所属分类: Java

FeedBack:
# re: How to use jar to implement double-click-run like .exe file
2006-06-20 12:43 | Alex
mark下   回复  更多评论
  
# re: How to use jar to implement double-click-run like .exe file
2006-06-20 20:07 | pear
呵呵,用工具生成更简单.如果是一两个类的大包,我一般会先copy一个已经打包过的东西,用RAR删除以前的文件,然后把要大包的文件托到RAR里面,再改改Main-Class 就可以了.  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问