<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. 閱讀(492) 評論(0)  編輯  收藏 所屬分類: Java
    主站蜘蛛池模板: 永久在线毛片免费观看| 最近中文字幕无免费| 国产三级电影免费观看| 亚洲色欲啪啪久久WWW综合网| 亚洲av日韩av激情亚洲| 亚洲国产亚洲片在线观看播放| 三年片在线观看免费观看大全动漫| 情人伊人久久综合亚洲| 亚洲人成77777在线播放网站不卡 亚洲人成77777在线观看网 | 亚洲国产成a人v在线观看| 亚洲啪啪免费视频| 亚洲天堂免费在线视频| 一级特黄特色的免费大片视频| 亚洲无码高清在线观看| AAAAA级少妇高潮大片免费看| 亚洲人成网站在线观看播放| 最近中文字幕大全免费版在线| 成人黄页网站免费观看大全| 亚洲日韩AV无码一区二区三区人| 日日AV拍夜夜添久久免费| 日韩亚洲AV无码一区二区不卡| 乱爱性全过程免费视频| 蜜桃视频在线观看免费网址入口| 亚洲熟妇丰满xxxxx| 男人的天堂亚洲一区二区三区 | 国产午夜免费福利红片| 国产免费区在线观看十分钟| 亚洲AV午夜成人影院老师机影院| 色屁屁在线观看视频免费| 国产精品视频永久免费播放| 精品亚洲福利一区二区| 在线jlzzjlzz免费播放| 日韩在线观看视频免费| 亚洲AV无码一区二区三区DV| 日韩免费a级毛片无码a∨| 深夜免费在线视频| 亚洲香蕉免费有线视频| 亚洲一区免费观看| 亚洲高清国产拍精品熟女| 免费无码肉片在线观看| 72pao国产成视频永久免费|