隨筆-4  評論-1  文章-2  trackbacks-0
          ?

          最近看到有不少朋友問java打包生成jar文件的問題,這種做法的好處就是可以直接運行,甚至可以在windows環境下就可以運行,不需要繁瑣的編譯。我認為方法大致有二:

          ?? 第一種方法,假設d:\test目錄下面有兩個類AB,其中A是主類。

          1、用文本編輯器編寫一個清單文件:Mymoon.mf。內容如下:

          ?? Manifest-Version: 1.0

          ?? Main-Class: A

          ?? Created-By: 1.2.2(Sun Microsystems Inc.):

          ?? 各行中間要有空格。保存到d:\test

          2、生成jar文件。

          ?? D:\test\jar cfm w.jar Mymoon.mf A.class B.class

          ?? 完成以后就會生成w.jar的文件了,可以放到任何地方運行。

          ?

          第二種方法,使用apache-ant編譯。

          Apache-ant作為一個java的生成工具,肯定有不少朋友已經用到了,ant作為最初的tomcat的組件,作為用于生成開放源代碼java項目的事實上的標準,已經獲得了廣泛歡迎,他的功能很多,主要是通過build.xml文件來實現,關于antxml的用法,大家可以參考資料,我在這里只介紹生成jar文件的方法。

          首先,在c:\目錄下建立一個包,名為src,里面可以放入一個簡單的helloworld.java的程序。這時候不需要編譯文件。

          第二,在c盤下建立一個xml文件build,在build中輸入以下內容:

          <?xml version="1.0"?>

          <project default="dist" name="helloworld">

          <description>a simple java project</description>

          <property name="srcDir" location="src"/>

          <property name="buildDir" location="build"/>

          <property name="distDir" location="dist"/>

          <target name="init">

          <tstamp/>

          <mkdir dir="${buildDir}"/>

          <mkdir dir="${distDir}"/>

          </target>

          <target name="compile" depends="init">

          <javac srcdir="${srcDir}" destdir="${buildDir}"/>

          </target>

          <target name="dist" depends="compile">

          <jar destfile="${distDir}/package-${DSTAMP}.jar" basedir="${buildDir}">

          <manifest>

          <attribute name="Build-By" value="${user.name}"/>

          <attribute name="Main-class" value="src.helloworld"/>

          </manifest>

          </jar>

          <jar destfile="${distDir}/package-src-${DSTAMP}.jar" basedir="${srcDir}"/>

          </target>

          ?

          <target name="clean">

          <delete dir="${buildDir}"/>

          <delete dir="${distDir}"/>

          </target>

          </project>

          ?? 關于這個xml文件的詳細工作方法,我就不介紹,大家可以參看文檔。

          ?? 第三、在c提示符下輸入,ant build.xml,如果一切順利,系統會自動生成兩個文件夾,dist和build,其中build中保存的是編譯好的helloworld.class文件,dist中包含兩個文件,其中一個是helloworld源文件,另一個就是我們需要的jar文件了,接著我們就可以在dist目錄下運行這個文件了。例如本例:java jar package-20060315.jar。

          ?? 以上就是生成.jar文件的方法,我覺得第二種更好,更符合工程上的規范。

          posted on 2006-03-18 14:07 JavaWorm 閱讀(1605) 評論(0)  編輯  收藏 所屬分類: 開發技術學習

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 乌拉特后旗| 邹城市| 华安县| 延津县| 新余市| 新和县| 丹阳市| 长治县| 漳浦县| 阜阳市| 江西省| 集贤县| 汝州市| 普格县| 麦盖提县| 龙井市| 连州市| 普宁市| 南康市| 淳安县| 嘉鱼县| 赞皇县| 蒲江县| 贵州省| 辽阳县| 绥江县| 平南县| 广平县| 湛江市| 山阴县| 会东县| 德令哈市| 郸城县| 织金县| 务川| 宁河县| 德兴市| 漳平市| 东山县| 青阳县| 永济市|