• <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 逛奔的蝸牛 閱讀(8899) 評論(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
              回復  更多評論
              

            久久精品国产日本波多野结衣| 久久伊人亚洲AV无码网站| 99久久免费国产精品| 久久精品成人免费网站| 精品久久久久久无码中文字幕| 精品久久久久久久国产潘金莲 | 久久噜噜久久久精品66| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 久久精品国产亚洲Aⅴ蜜臀色欲| 久久亚洲日韩看片无码| 精品久久久久久综合日本| 日韩欧美亚洲综合久久影院Ds | 国产99精品久久| 亚洲精品美女久久久久99小说 | 99精品久久精品一区二区| 久久96国产精品久久久| 国产精品亚洲综合久久| 国产精品久久久久乳精品爆| 国产激情久久久久久熟女老人| 国产99久久久久久免费看 | 久久久国产精品网站| 久久久SS麻豆欧美国产日韩| 国产精品免费久久| 91精品国产高清久久久久久io| 天天做夜夜做久久做狠狠| 秋霞久久国产精品电影院| 久久久久成人精品无码中文字幕 | 久久AⅤ人妻少妇嫩草影院| 丰满少妇高潮惨叫久久久| 狠狠综合久久综合88亚洲| 久久国产精品视频| 91久久精品电影| 91久久精品国产免费直播| 久久大香香蕉国产| 浪潮AV色综合久久天堂| 丁香色欲久久久久久综合网| 亚洲精品美女久久久久99小说| 亚洲天堂久久精品| 国产亚洲精久久久久久无码AV| 99久久婷婷国产综合精品草原| 久久久久久免费一区二区三区 |