• <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

            使用方法:如果代碼是如下面的目錄結(jié)構(gòu)組織的,不需要修改什么,直接在終端運行ant命令即可在out目錄輸出對應的jar文件。
            <?xml version="1.0" ?>
            <project default="jar" name="Acid">
                
            <!-- 工程目錄結(jié)構(gòu)
                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. 初始化工作,如創(chuàng)建目錄等 -->
                
            <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文件(有l(wèi)ib目錄) 2012-12-03 17:50 daisy
            基本看著你的寫的 為嘛我的有問題呢  回復  更多評論
              

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

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

            久久WWW免费人成—看片| 色婷婷久久综合中文久久蜜桃av | 久久亚洲国产最新网站| 国产精品久久国产精品99盘| 午夜精品久久久久久久| 97久久婷婷五月综合色d啪蜜芽| 久久亚洲高清综合| 久久se精品一区二区影院| 精品国产一区二区三区久久蜜臀| 久久免费精品一区二区| 日本免费一区二区久久人人澡 | 国产99久久九九精品无码| 久久这里只有精品久久| 亚洲伊人久久大香线蕉苏妲己| 伊人久久综在合线亚洲2019| 91精品国产色综久久| 久久精品这里只有精99品| 一本一道久久a久久精品综合| 97久久婷婷五月综合色d啪蜜芽 | 久久精品aⅴ无码中文字字幕不卡 久久精品aⅴ无码中文字字幕重口 | 天堂无码久久综合东京热| 久久国产精品偷99| 欧美精品国产综合久久| 国产精品久久久久国产A级| 99久久综合狠狠综合久久| 亚洲伊人久久综合影院| 久久亚洲精品成人AV| 九九热久久免费视频| 久久午夜福利无码1000合集| 精品999久久久久久中文字幕| 国产综合精品久久亚洲| 精产国品久久一二三产区区别 | 伊人久久大香线蕉综合网站| 久久婷婷成人综合色综合| 国产午夜福利精品久久| 欧美牲交A欧牲交aⅴ久久 | 精品伊人久久大线蕉色首页| 久久国产精品久久久| 久久婷婷五月综合97色直播| 热re99久久精品国产99热| 亚洲级αV无码毛片久久精品|