<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Bryan

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      37 Posts :: 3 Stories :: 24 Comments :: 0 Trackbacks

    Introduction

    Java developers often come to a point where they wish to deliver their application as a single Jar file. The Java Runtime Environment supports running a Jar file using the following syntax:
    java -jar jarname.jar
    
    The only requirement of the jarname.jar file is that it contains a manifest attribute with the key Main-Class a main class to run. Suppose the application entry point is the class com.mydomain.mypackage.Main. Add the following line to the META-INF/MANIFEST.MF file:
    Main-Class: com.mydomain.mypackage.Main
    
    So far so good. But, here's where the problems usually start. Any non-trivial Java application is going to rely on any number of supporting Jar files. For example, using the Apache Commons Logging capabilty to do logging an application will need to have the commons-logging.jar file on its classpath.

    Most developers reasonably assume that putting such a Jar file into their own Jar file, and adding a Class-Path attribute to the META-INF/MANIFEST will do the trick:

    jarname.jar
    | /META-INF
    | | MANIFEST.MF
    | |  Main-Class: com.mydomain.mypackage.Main
    | |  Class-Path: commons-logging.jar
    | /com/mydomain/mypackage
    | | Main.class
    | commons-logging.jar
    
    Unfortunately this is not the case. The Java classloader does not know how to load classes from a Jar inside a Jar. The entries on the Class-Path must be references to files outside the Jar file, defeating the goal of delivering an application in a single Jar file.

    Developers can write code to implement this function to load the classes from a jar inside a Jar.but we got good news that we can use the eclipse plugin FatJar in order to help us to make such a runable jar file. But Eclipse Galileo V3.5.2 has such a built in plugin to build such a jar file.It provides end users three ways and you can choose per to your request . I am pondering on this problem for two days and I hope this article which most parts come from the internet can help you.



    And you can get access to the sun website and got the following note:

    You specify classes to include in the Class-Path header field in the manifest file of an applet or application. The Class-Path header takes the following form:

    Class-Path: jar1-name jar2-name directory-name/jar3-name
    
    By using the Class-Path header in the manifest, you can avoid having to specify a long -classpath flag when invoking Java to run the your application.
    Note: The Class-Path header points to classes or JAR files on the local network, not JAR files within the JAR file or classes accessible over internet protocols. To load classes in JAR files within a JAR file into the class path, you must write custom code to load those classes. For example, if MyJar.jar contains another JAR file called MyUtils.jar, you cannot use the Class-Path header in MyJar.jar's manifest to load classes in MyUtils.jar into the class path.
    posted on 2010-06-19 15:29 Life is no respector of any genius. 閱讀(490) 評論(0)  編輯  收藏 所屬分類: Java
    主站蜘蛛池模板: 在线免费观看一级片| 亚洲尤码不卡AV麻豆| 又硬又粗又长又爽免费看| 国产综合亚洲专区在线| 91热久久免费精品99| 亚洲AV电影天堂男人的天堂| 精品亚洲一区二区三区在线播放| 成人黄网站片免费视频| 亚洲成a人片在线观看中文!!!| 国产成人免费网站在线观看| 爱丫爱丫影院在线观看免费| 亚洲真人无码永久在线观看| 国产亚洲av片在线观看播放| 歪歪漫画在线观看官网免费阅读| 人妻仑乱A级毛片免费看| 亚洲欧洲国产精品久久| 免费国产小视频在线观看| 久久久久久一品道精品免费看| 婷婷国产偷v国产偷v亚洲| 97亚洲熟妇自偷自拍另类图片| 又黄又爽无遮挡免费视频| 永久看日本大片免费35分钟| 一级毛片在线免费视频| 亚洲av无码片区一区二区三区| 亚洲色爱图小说专区| 日韩免费一级毛片| 97视频免费观看2区| 一个人免费观看www视频| 亚洲色成人WWW永久在线观看| 国产成人无码综合亚洲日韩| 黑人粗长大战亚洲女2021国产精品成人免费视频 | 亚洲色WWW成人永久网址| 在线jyzzjyzz免费视频| 久久aa毛片免费播放嗯啊| 国产99久久久国产精免费| 亚洲欧美黑人猛交群| 久久国产亚洲精品无码| 国产AV无码专区亚洲A∨毛片| 亚洲毛片av日韩av无码| 国产精品免费电影| 国产精品免费观看久久|