zoukankan      html  css  js  c++  java
  • java 用ant打包成jar文件

    一、下载ant包,解压放放到你的项目中

    二、在ant文件夹下创建一个build.xml文件,内容如下

    <?xml version="1.0" encoding="GB2312" ?>
    <project name="funServlet" basedir="." default="buildjar">  
        <!-- 工程目录结构
        project
            |-ant
               |-build.xml
            |-WebRoot
               |-WEB-INF
                  |-lib
                  |-classes
            |out
        -->
        <property name="lib.dir" value="../WebRoot/WEB-INF/lib"/>
        <property name="src.dir" value="../src"/>
        <property name="classes.dir" value="../WebRoot/WEB-INF/classes"/>
        <property name="output.dir" value="../out"/>
        <property name="jarname" value="funServlet.jar"/>
        <property name="mainclass" value="com.sun.servlet.funServlet"/><!--包名加class名称-->
    
        <!-- 第三方jar包的路径 -->
        <path id="lib-classpath">
            <fileset dir="${lib.dir}">
                <include name="servlet-api.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="buildjar" 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>
    basedir="."  表示目录为build.xml的根目录
    <property name="lib.dir" value="../WebRoot/WEB-INF/lib"/>  要引用的第三方jar包在,父目录的WebRoot/WEB-INF/lib中。
    最输出的jar文件在与ant文件夹同级的out文件中包括引用的第三方jar和新生成的jar。

  • 相关阅读:
    Certificate、Provisioning Profile、App ID
    boundingRectWithSize
    IOS照片框架
    UIlabel 属性text
    UIMenuController的使用,对UILabel拷贝以及定制菜单
    iOS 自定义emoji表情键盘
    IOS第三方字体
    IOS 验证码
    网上收集的以及自己总结的iOS开发技巧
    给自己一个坚持下去的理由
  • 原文地址:https://www.cnblogs.com/aegisada/p/4551968.html
Copyright © 2011-2022 走看看