• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            逛奔的蝸牛

            我不聰明,但我會很努力

               ::  :: 新隨筆 ::  ::  :: 管理 ::
            @import url(http://www.shnenglu.com/cutesoft_client/cuteeditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
            使用Ant打包Jar文件
            主要是lib/*.jar的路徑需要注意: jar包里的jar包是不能被識別為classpath

            使用方法:如果代碼是如下面的目錄結構組織的,不需要修改什么,直接在終端運行ant命令即可在out目錄輸出對應的jar文件。
            <?xml version="1.0" ?>
            <project default="jar" name="Acid">
                
            <!-- 工程目錄結構
                project
                    |-bin
                    |-src
                    |-lib
                    |-out
                    |-build.xml
                
            -->
                
            <property name="lib.dir" value="lib"/>
                
            <property name="src.dir" value="src"/>
                
            <property name="classes.dir" value="bin"/>

                
            <property name="output.dir" value="out"/>
                
            <property name="jarname" value="Test.jar"/>
                
            <property name="mainclass" value="com.biao.Test"/>

                
            <!-- 第三方jar包的路徑 -->
                
            <path id="lib-classpath">
                    
            <fileset dir="${lib.dir}">
                        
            <include name="**/*.jar"/>
                    
            </fileset>
                
            </path>

                
            <!-- 1. 初始化工作,如創建目錄等 -->
                
            <target name="init">
                    
            <mkdir dir="${classes.dir}"/>
                    
            <mkdir dir="${output.dir}"/>
                
            </target>

                
            <!-- 2. 編譯 -->
                
            <target name="compile" depends="init">
                    
            <javac srcdir="${src.dir}" destdir="${classes.dir}">
                        
            <compilerarg line="-encoding UTF-8"/>
                        
            <classpath refid="lib-classpath"/>
                    
            </javac>
                
            </target>

                
            <!-- 3. 打包jar文件 -->
                
            <target name="jar" depends="compile">
                    
            <copy todir="${output.dir}/lib">
                        
            <fileset dir="${lib.dir}"/>
                    
            </copy>

                    
            <!--Create a property containing all .jar files,
                    prefix lib/, and seperated with a space
            -->
                    
            <pathconvert property="mf.classpath" pathsep=" ">
                        
            <mapper>
                            
            <chainedmapper>
                                
            <!-- jar包文件只留文件名,去掉目錄信息 -->
                                
            <flattenmapper/>
                                
            <!-- add lib/ prefix -->
                                
            <globmapper from="*" to="lib/*"/>
                            
            </chainedmapper>
                        
            </mapper>
                        
            <path refid="lib-classpath"/>
                     
            </pathconvert>

                    
            <!-- jar文件的輸出路徑 -->
                    
            <jar destfile="${output.dir}/${jarname}" basedir="${classes.dir}">
                        
            <manifest>
                            
            <attribute name="Main-class" value="${mainclass}"/>
                            
            <attribute name="Class-Path" value="${mf.classpath}"/>
                        
            </manifest>
                    
            </jar>
                
            </target>
            </project>
            posted on 2012-09-17 01:25 逛奔的蝸牛 閱讀(8885) 評論(3)  編輯 收藏 引用 所屬分類: Java

            評論

            # re: Java:Ant打包jar文件(有lib目錄) 2012-12-03 17:50 daisy
            基本看著你的寫的 為嘛我的有問題呢  回復  更多評論
              

            # re: Java:Ant打包jar文件(有lib目錄) 2012-12-03 17:52 daisy
            打包后的jar文件 里面的class文件為空 還有一個問題想請教一下 生成的jar的META-INF/MANIFEST.MF 的 Class-path 中都jar文件都是連在一起 運行不會報錯嗎。。。。  回復  更多評論
              

            # re: Java:Ant打包jar文件(有lib目錄) 2013-03-01 17:25 逛奔的蝸牛
            用Ant自己寫任務太麻煩了,現在用Maven,使用起來很簡單@daisy
              回復  更多評論
              

            狠狠色丁香婷婷久久综合五月| 亚洲精品高清国产一线久久| 久久本道伊人久久| 国产精品午夜久久| 久久免费看黄a级毛片| 伊人久久大香线蕉综合Av| 精品999久久久久久中文字幕| 国产精品va久久久久久久| 欧美日韩精品久久久免费观看| 久久美女网站免费| 99久久国产亚洲综合精品| 女人香蕉久久**毛片精品| 亚洲乱码日产精品a级毛片久久| 久久久久久毛片免费播放| 久久国产影院| 久久不射电影网| 国内高清久久久久久| 久久久受www免费人成| 精品综合久久久久久97超人| 久久久精品国产免大香伊| 久久精品18| 国产伊人久久| 一本大道加勒比久久综合| 成人久久综合网| 日韩乱码人妻无码中文字幕久久| 亚洲а∨天堂久久精品9966| 99久久精品国产毛片| 久久九九青青国产精品| 久久精品国产精品青草| 97久久精品无码一区二区| 久久国产亚洲高清观看| 麻豆AV一区二区三区久久 | 亚洲国产成人久久精品99| 99久久精品费精品国产| 久久精品国产影库免费看| 91精品国产综合久久久久久| 亚洲精品无码久久千人斩| 亚洲va久久久噜噜噜久久天堂| 老男人久久青草av高清| 无码人妻久久久一区二区三区| 久久夜色精品国产亚洲|