zoukankan      html  css  js  c++  java
  • [转]eclipse 中的 jar file 和 runnable jar file的区别

     java最难学的就是角落的东东了,不愧叫做java平台。搜索了一把总算明白了。 

         直接运行 .class的方法     java  -cp .  com.network.Chat  , 不用加.class后缀 

        从eclipse中export 的jar file,仅仅是把.class打包了。所以执行这种jar file需要用 java -cp .;ch04.jar com.thnkjava.ch04, 如果你还应用到另外的lib库,你必须在cp里说明,也就是  java -cp .;ch04.jar;lib01.jar;lib02.jar com.thnkjava.ch04 来执行。事实上可以发现ch04.jar也在cp里面,说明ch04.jar就是lib库,最后的参数指明了要被执行的类名。

        如果从eclipse里export出的是 runnable jar file,那么个执行这个jar包的时候是不需要指明哪个类的,直接这样执行 java -jar ch04.jar。原因就是jar包中的MANIFEST.MF内容不同。 runnable jar包中指明哪个类先执行,所以你可以用 java -jar ch04.jar来执行你想要执行的代码,而不必指明具体哪个类。这个你可以打开 jar包查看MANIFEST.MF的区别,一目了然。

         生成runnable jar file时,有两个选项,Extract required libraries into generated JAR 和 package equired libraries into generated JAR。 前者是把你用到的.class 文件提取出来,后者则是把你所需要的所有jar包都打进一个包里。两者的MANIFEST.MF文件内容也有所不同,这应该是eclipse造成的,IDE 做了自己的事情,具体就不研究了。

    http://download.oracle.com/javase/tutorial/deployment/jar/appman.html

  • 相关阅读:
    《大话设计模式》读书笔记
    设计模式个人笔记
    多线程的单元测试工具
    设计模式六大原则
    时间复杂度和空间复杂度(转)
    排序算法笔记
    《人月神话》读书笔记
    微信公众号开发踩坑记录(二)
    微信公众号开发踩坑记录
    全栈工程师之路
  • 原文地址:https://www.cnblogs.com/qvbrgw/p/4433571.html
Copyright © 2011-2022 走看看