0
点赞
收藏
分享

微信扫一扫

ant 打包脚本

alanwhy 2023-06-15 阅读 75


整理了一下编译JDK源码的Ant脚本。发现用新一点的JDK编译旧的版本更容易,比如用jdk1.6.0_25编译jdk1.6.0_21。如果直接用jdk1.6.0_21编译自身代码,不是缺这个就是没那个,颇为麻烦。切到jdk1.6.0_25后,一下就编译通过了。

<project name="create rt_debug.jar" default="createJar" basedir="."> 

 <!-- *************************************************************** --> 

 <!-- Set-Up of propertys --> 

 <!-- *************************************************************** --> 

 <property name="project.build" location="build" /> 

 <property name="project.src" location="${project.build}/src" /> 

 <property name="project.classes" location="${project.build}/classes" /> 

 <property name="project.dist" location="${project.build}/dist" /> 

 <property name="JAVA_SOURCE" value="C:/Dev/Software/Java/jdk1.6.0_21" /> 

 <property name="JAVA_COMPILER" value="C:/Dev/Software/Java/jdk1.6.0_25/fastdebug" /> 

 <property name="debuglevel" value="source,lines,vars" /> 

 <property name="target" value="1.6" /> 

 <property name="source" value="1.6" /> 

 <property environment="env" /> 

 <!-- *************************************************************** --> 

 <!-- Initialize the bulid environment. --> 

 <!-- *************************************************************** --> 

 <target name="init"> 

 <!-- Create the time stamp --> 

 <tstamp /> 

 </target> 

 <!-- *************************************************************** --> 

 <!-- Set-Up of classpath --> 

 <!-- *************************************************************** --> 

 <path id="JavaLibraries"> 

 <pathelement location="${project.classes}" /> 

 <fileset dir="${JAVA_COMPILER}/lib"> 

 <include name="**/*.jar" /> 

 </fileset> 

 <fileset dir="${JAVA_COMPILER}/jre/lib"> 

 <include name="**/*.jar" /> 

 </fileset> 

 </path> 

 <path id="project.classpath"> 

 <path refid="JavaLibraries" /> 

 </path> 

 <!-- *************************************************************** --> 

 <!-- Clean the bulid environment. --> 

 <!-- *************************************************************** --> 

 <target name="clean" depends="init"> 

 <delete dir="${project.build}" quiet="true" /> 

 <mkdir dir="${project.build}" /> 

 </target> 

 <!-- *************************************************************** --> 

 <!-- Unpacd the source code package. --> 

 <!-- *************************************************************** --> 

 <target name="unpack" depends="init, clean"> 

 <unzip src="${JAVA_SOURCE}/src.zip" dest="${project.src}" /> 

 </target> 

 <!-- ****************************************************************** --> 

 <!-- Compile the source code. --> 

 <!-- ******************************************************************* --> 

 <target name="build" depends="unpack"> 

 <echo message="Compile ${ant.project.name}" /> 

 <mkdir dir="${project.classes}" /> 

 <javac classpathref="project.classpath" srcdir="${project.src}" destdir="${project.classes}" debug="true" debuglevel="${debuglevel}" source="${source}" target="${target}" fork="true" memoryMaximumSize="512m"> 

 <include name="**/*.java" /> 

 </javac> 

 </target> 

 <!-- ****************************************************************** --> 

 <!-- Create jar package. --> 

 <!-- ******************************************************************* --> 

 <target name="createJar" depends="build"> 

 <mkdir dir="${project.dist}" /> 

 <jar jarfile="${project.dist}/rt_debug.jar" compress="false"> 

 <fileset dir="${project.classes}" /> 

 </jar> 

 </target> 

</project>

举报

相关推荐

0 条评论