首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Ant搞定所有开发流程【转】

2012-12-18 
Ant搞定全部开发流程【转】由于涉及到打包签名,所以在开始全部工作之前,我们先做好签名的准备工作。那就是建

Ant搞定全部开发流程【转】

由于涉及到打包签名,所以在开始全部工作之前,我们先做好签名的准备工作。

那就是建立密钥库(目录"/>

<!—

? 为了更进一步体现Ant强大的功能,我们把签名过程写在批处理文件中,供ANT调用. ?

签名代码如下:

配置文件路径"/>

????? <!—? 任务1:清空 ?-->

? <target name="clean">

? <delete failonerror="false" includeemptydirs="true">

????? <fileset dir="${classes}"/>

?? </delete>

? <delete failonerror="false" includeemptydirs="true">

? ??????<fileset dir="${clientjar}\com"/>

? ??? </delete>

?? <mkdir dir="${classes}" />

? </target>

<!—? 任务2:编译 ?-->

? <target name="compile">??

??? <javac srcdir="${src}" destdir="${classes}" debug="true"

?????????? optimize="false" deprecation="true">

????? <classpath>

?? <fileset dir="${lib}">

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

?? </fileset>

????? </classpath>??????????

??? </javac>??

? ?<copy todir="${classes}">

????? <fileset dir="${src}">

? ??? <include name="**/*.properties"/>

? ??? <include name="**/*.xml"/>

? ??? <include name="**/*.gif"/>

? ??? <include name="**/*.png"/>

?? ? </fileset>

?? </copy>?

? <!—? 任务3:将文件全局复制到打包目录 ?-->

? <copy todir="${clientjar}">

? ????? <fileset dir="${classes}">

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

? ????? </fileset>

? ?? </copy>

? </target>

?? <!—任务4: 调用签名批处理文件 ?-->

? <target name="run">

? ?<exec executable="${sign}">

? ?</exec>

?? </target>

?? <!—任务5: 混淆

注意:要先安装Proguard,并用图形界面做好配置文件,本文附录提供了简单介绍和下载地址。

-->

<target name="obfuscate">

?? ? <taskdef resource="proguard/ant/task.properties"

?? ?????????? classpath="${proguardhome}/lib/proguard.jar" />

?? ? <proguard configuration="${profile}" />

????? <!— 混淆完成之后要进行签名 ?-->

????? <exec executable="${sign}">

????? </exec>

? </target>

<!—任务6: 用InstallAnywhere构造安装包 ?

注意:要先安装InstallAnywhere,并用其做好配置文件。

-->

??? <target name="buildInstaller">

?? ?<taskdef name="buildinstaller" classname="com.zerog.ia.integration.ant.InstallAnywhereAntTask"/>

?? <buildfullinstaller?

?? IAlocation="${IALOC}"

?? IAProjectFile="${INSTALLLOC}"

?? BuildWindowsWithVM="true"

????? OptimizeWebInstaller="true"

?? InstallerStdErrRedirect="C:\console.txt"

?? />???

??? ? </target>

?? <!—任务7: 利用Javadoc工具生成API文档 ?-->

?? <target name="docs" depends="compile">??????

??????? <delete>

?????????? <fileset dir="${docs}/api" includes="**/*.*" />

??????? </delete>????

??????? <javadoc packagenames="生成的API文档要用的源代码包名"

????????????? sourcepath="${src}"

????????????? destdir="${docs}/api"

????????????? author="true"

????????????? version="true"

????????????? use="true"

????????????? windowtitle="Geoway Client API version ${version}">

?????????? <doctitle>文档头内容,可用HTML代码</doctitle>

?????????? <bottom>文档底部内容,可用HTML代码</bottom>

?????????? <classpath>

????????????? <fileset dir="${lib}">

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

????????????? </fileset>

????????????? <pathelement location="${classes}"/>

?????????? </classpath>

??????? </javadoc>

????? </target>

</project>

附录:Proguard简介绍及下载

ProGuard是一个开源的混淆和优化工具,不但能在类内部的代码段内部对代码进行混淆,更能将类名、各种类型方法、变量进行混淆(其实如果建立的代码包不要作为库在外部调用的话,其实进行全混淆是一种很不错的选择)。

下载地址为:

?http://easynews.dl.sourceforge.net/sourceforge/proguard/proguard3.0.7.zip

热点排行