`
流浪鱼
  • 浏览: 1682934 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ant编译java工程

    博客分类:
  • ant
 
阅读更多

我们编译和打包一个java工程需要用javac、jar、java命令,我们现在举个使用ant打包和运行java项目的例子,在写之前需要了解ant对应的javac、jar、java对应的任务

javac任务

用于编译一个或一组java文件,属性如下:

srcdir表示源程序的目录。
destdir表示class文件的输出目录。
includes表示被编译的文件。
excludes表示被排除的文件。
classpath表示所使用的类路径。
debug表示包含的调试信息。
optimize表示是否使用优化。
verbose 表示提供详细的输出信息。
fileonerror表示当碰到错误就自动停止。

deprecation表示的是提供详细的废弃错误信息,以表明那些类和调用时废弃的

excludes属性表示的是在源码目录srcdir中只编译除excludes之外的源码

用法如图:

includes属性表示的是在源码目录srcdir中只编译includes指定源码,其他的不编译

用法如图:

 

 

 

 

javadoc任务

用来生成html帮助文档

生成文档如下:



 

jar任务

 用来生成一个JAR文件,属性如下

destfile表示JAR文件名

basedir表示被归档的文件目录

includes表示被归档的文件

excludes表示被排除的文件

java任务

用来执行编译生成的.class文件,其属性如下
classname 表示将执行的类名
jar表示包含该类的JAR文件名
classpath所表示用到的类路径
fork表示在一个新的虚拟机中运行该类
failonerror表示当出现错误时自动停止
output 表示输出文件
append表示追加或者覆盖默认文件。
执行的参数用嵌套的<arg> 

完整的build.xml内容为:

<?xml version="1.0" encoding="UTF-8"?>
<!--测试使用ant打包java程序,并运行-->
<project basedir="." default="runJava" name="jarTest">
	<!--定义打包项目基本信息-->
	<property name="project_name" value="测试ant打包" />
	<property name="version" value="1.0" />
	<property name="date" value="2013-05-04" />
	<property name="author" value="流浪鱼" />

	<!--定义路径-->
	<property name="src.dir" value="src" />
	<property name="build.dest" value="${basedir}/build_ant/dest" />
	<property name="build.dest.classes" value="${basedir}/build_ant/dest/classes" />
	<property name="build.dest.jar" value="${basedir}/build_ant/dest/jar" />
	<property name="jar.name" value="test.jar" />
	<target name="clear">
		<description>删除ant构建时生成文件夹</description>
		<delete dir="${build.dest}"/>
	</target>
	<target name="init" depends="clear">
		<description>创建构建需要文件夹</description>
		<echo message="---${project_name} ${version} [${date}]  by [${author}]---" />
		<mkdir dir="${build.dest}" />
		<mkdir dir="${build.dest.classes}" />
		<mkdir dir="${build.dest.jar}" />
	</target>
	<target name="compile" depends="init">
		<description>编译java程序</description>
		<javac srcdir="${src.dir}" destdir="${build.dest.classes}" encoding="UTF-8"/>
	</target>
	<target name="buildJar" depends="compile">
		<description>打包java程序</description>
		<!--没有指定主方法
		<jar destfile="${build.dest.jar}/${jar.name}" basedir="${build.dest.classes}" />
		-->
		<jar destfile="${build.dest.jar}/${jar.name}" basedir="${build.dest.classes}" >
			<manifest>
				<attribute name="Main-class" value="Test" />
			</manifest>
		</jar>
	</target>
	<!--
	<target name="runJava" depends="buildJar">
		<description>运行java程序</description>
		<java classname="com.test.Test" classpath="${build.dest.jar}/${jar.name}"/>
	</target>
	-->

	<target name="runJava" depends="buildJar">
		<description>运行java程序</description>
		<java classname="com.test.Test" >
			<classpath>
				<!-- 使用编译类后的class所在文件夹
				<pathelement path="${build.dest.classes}" />
				-->
				<!--使用jar文件-->
				<pathelement path="${build.dest.jar}/${jar.name}" />
			</classpath>
		</java>
	</target>
</project>

 测试项目见附件

  • 大小: 75.5 KB
  • 大小: 46.5 KB
分享到:
评论

相关推荐

    ant编译java web工程build.xml配置文件

    介绍了如何通过ant进行java web工程的编译操作的详细配置

    AntTest演示工程,演示如何使用Ant编译Android工程

    学习Ant编译Android工程有助于开发者理解构建过程的底层细节,对优化构建效率、理解和调试构建问题有一定的帮助。同时,这也是一种对历史技术的回顾,对于资深开发者来说,了解和掌握不同构建工具的优缺点是十分...

    ant编译1.9版本

    Apache Ant是Java开发中不可或缺的自动化构建工具,它在软件工程领域扮演着重要角色...对于“ant编译1.9版本”的学习,意味着掌握了一种有效管理和自动化Java项目开发的方法,这对于提升开发效率和维护性具有重要意义。

    Ant编译打包android工程流程

    ### Ant编译打包Android工程流程详解 #### 一、Ant编译打包步骤 在深入了解Ant如何帮助我们构建Android项目之前,我们先来了解整个编译打包的过程。 1. **使用aapt为项目资源生成R.java文件** - **工具介绍**:...

    JAVA_Ant详细介绍与应用

    包含文档和项目实例。 用Ant实现Java项目的自动构建和部署。...1.利用Ant的javac任务来编译java程序 2.使用Ant的java任务运行Java程序 3.使用Ant的jar任务生成jar文件 4.使用Ant的war任务打包J2EE Web项目 五.总结

    使用Ant将java工程打包成bat可执行性文件

    本文将深入探讨如何使用Ant将Java工程打包成bat可执行文件,并结合提供的`antBatTest`压缩包中的示例进行说明。 首先,我们需要了解Ant的基本概念。Ant是一个基于XML的构建工具,它的主要任务是编译、测试、打包和...

    ant 构建java web工程

    一个简单的java web 编译打包部署

    .Ant安装编译操作手册

    - **编写目的**:本文档旨在指导软件发布人员如何正确安装与配置Apache Ant,解决在安装与使用过程中可能遇到的问题,确保能够顺利地使用Ant对Flex/Java工程项目进行自动化编译与打包。 #### 二、环境说明 - **Ant...

    ant结合junit进行软件自动测试

    本文假设读者具备如下知识:1、熟练ant进行java工程编译(参考本人“ant编译java工程”一 ant结合junit进行软件自动测试 软件测试 持续集成实践三,灵感来自于MartinFowler的“持续集成“一文。可以在...

    使用ant编译之签名问题1

    #### 一、Ant编译技术概述 Ant是一种Java平台下的构建工具,主要用于自动化构建过程中的编译、测试、打包等任务。使用Ant进行编译相比于传统的Eclipse IDE编译有诸多优势,比如提高了项目的开发效率,尤其是在大型...

    使用Flex Ant Tasks编译工程文件

    本话题聚焦于“使用Flex Ant Tasks编译工程文件”,这是一个关于如何使用Apache Ant结合Flex工具集来构建Flex应用程序的过程。Apache Ant是一个Java库和命令行工具,其任务是驱动构建过程,而Flex Tasks则是专门为...

    ant打包Web工程

    在`src`目录下,通常存放着Java源代码,Ant会编译这些源代码并生成对应的class文件。Ant通过`&lt;javac&gt;`任务来完成编译操作,可以指定源代码路径、目标目录、编译选项等。 打包Web应用通常涉及生成WAR(Web Archive)...

    Ant-JAVA深层探究

    #### 一、Ant与Java编译机制 在深入探讨Ant之前,我们首先回顾一下Java编译器(javac.exe)的基本功能及其局限性。Java编译器具备一种称为“make机制”的特性,即根据源代码中的声明和类型信息,配合`import`指令,...

    ant学习测试工程源码

    【标题】"ant学习测试工程源码"是一个Java开发的学习项目,主要目的是教授如何使用Apache Ant作为构建工具来管理基于Spring、Hibernate和JUnit的软件工程。Ant是一个流行的开源构建工具,它允许开发者通过XML配置...

    ant自动发布工程

    "ant自动发布工程"是指利用Ant的脚本化特性,实现对Java工程的自动化发布流程,极大地提高了开发效率和减少了手动操作的错误。下面将详细阐述Ant在自动发布工程中的核心知识点。 1. **Ant基本概念** - **构建文件...

    java中用ant工具将工程打包

    本篇文章将详细介绍如何使用Ant工具将Java工程打包成可执行的JAR文件。 首先,我们需要了解Ant的安装和配置。Ant可以在其官方网站Apache Ant上下载最新版本,然后将其解压缩。在Windows环境下,需要配置环境变量,...

Global site tag (gtag.js) - Google Analytics