sdfsdnfslk 发表于 2017-2-28 08:51:02

【Ant】Ant实例(1)一个Java文件依赖于某jar包,需要打包部署

  
作者: wangding263链接:http://wangding263.javaeye.com/blog/309829发表时间: 2009年01月04日
  这是一个很简单的web 容器,是从Jetty这个容器中抽出最小子集,自己打包的.但是只能运行Servlet呵呵。
  webserver.jar是jetty的依赖包,JettySample.java是运行文件.
  JettySample.java的编译依赖于webserver.jar.
  Build配置文件和文件压缩包如下,重要的地方,自己先写下注释,备忘,以后好查 呵呵。


<project default="run" basedir=".">
    <property name="lib.dir" location="lib" />
    <property name="src" location="src" />
    <property name="classpath" location="build" />
    <property name="dist" location="dist" />
    <property name="webserver_jar" value="webserver.jar" />
       <!--定义项目编译的时候,以来的lib包的路径-->
      <path id="project.class.path">
      <pathelement path="${classpath}" />
      <fileset dir="${lib.dir}">
            <include name="**/*.jar" />
      </fileset>
    </path>
    <target name="init">
      <mkdir dir="${src}" />
      <mkdir dir="${classpath}" />
      <mkdir dir="${lib.dir}" />
      <mkdir dir="${dist}" />
      <copy file="${webserver_jar}" todir="${lib.dir}" />
      <copy file="JettySample.java" todir="${src}" />
      <copy file="${webserver_jar}" todir="${dist}" />
    </target>
    <target name="compile" depends="init">
      <!--target="1.4" 表示编译器用1.4的方式编译,当然也可以采用1.5,classpath 中的refid这表示依赖于那些jar包编译-->
      <javac fork="true" target="1.4" srcdir="src" destdir="${classpath}" debug="true" >
            <classpath refid="project.class.path" />
      </javac>
      </target>
       <target name="jar" depends="compile">
      <jar destfile="${dist}/${webserver_jar}" update="true" basedir="${classpath}">
      <!--定义jar包运行的时候,实现要寻找的含有main方法的主类-->
            <manifest>
                <attribute name="Main-class" value="JettySample" />
            </manifest>
      </jar>
    </target>
    <target name="run" depends="jar,clean">
      <java jar="${dist}/${webserver_jar}" fork="true" />
    </target>
    <target name="clean">
      <delete dir="${classpath}"/>
      <delete dir="${src}"/>
      <delete dir="${lib.dir}"/>
    </target>
</project>



  文件下载:webserver.zip
页: [1]
查看完整版本: 【Ant】Ant实例(1)一个Java文件依赖于某jar包,需要打包部署