<?xml version="1.0"?>
<project name="Hello world" default="pack">
<!-- properies -->
<property name="src.dir" value="src" />
<property name="classes.dir" value="classes" />
<property name="dist.dir" value="dist" />
<property name="lib.dir" value="lib" />
<!-- 定义classpath -->
<path id="master-classpath">
<fileset file="${lib.dir}/*.jar" />
<pathelement path="${classes.dir}"/>
</path>
<target name="delete">
<echo>删除Classes目录下面的无用文件</echo>
<delete dir="${classes.dir}"></delete>
<!--
<echo>删除Dist目录下面的无用jar文件</echo>
<delete dir="${dist.dir}"></delete>
-->
<echo>清除完毕</echo>
</target>
<!-- 初始化任务 -->
<target name="init" depends="delete">
<echo message="下面开始初始化任务 ${src.dir}"></echo>
</target>
<!-- 编译 -->
<target name="compile" depends="init" description="compile the source files">
<echo>下面开始编译java类文件</echo>
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}" target="1.5">
<classpath refid="master-classpath"/>
</javac>
<echo>开始转移后缀不为.java的文件</echo>
<copy todir="${classes.dir}">
<fileset dir="${src.dir}" includes="*.properties,*.xml,*.cfg" excludes="*.java"></fileset>
</copy>
</target>
<!-- 测试 -->
<target name="test" depends="compile" description="run junit test">
<echo>下面开始测试${classes.dir}</echo>
<fail if="tests.failed">
</fail>
</target>
<!-- 打包成jar -->
<target name="pack" depends="test" description="make .jar file">
<echo>下面开始打包jar文件</echo>
<echo>下面开始生成dist目录</echo>
<mkdir dir="${dist.dir}" />
<echo>dist目录生成成功</echo>
<echo>下面开始打包</echo>
<jar destfile="${dist.dir}/server.jar" basedir="${classes.dir}">
<manifest >
<attribute name="Main-Class" value="logic.Logic"/>
<attribute name="Class-Path" value="mysql-connector-java-5.0.2-beta-bin.jar log4j-1.2.15.jar"/>
</manifest>
</jar>
<echo>打包成功</echo>
<echo>全部操作完成</echo>
</target>
<!-- 运行 -->
<!--
<target name="run" depends="pack" >
<copy todir="${dist.dir}">
<fileset dir="${lib.dir}" includes="*.jar"></fileset>
</copy>
<java ></java>
<java jar="${dist.dir}/server.jar" fork="true"/>
<echo>开始运行java程序</echo>
</target>
-->
<!--
<target name="run" depends="pack" description="run logic.Logic">
<java classname="logic.Logic" fork="true" >
<classpath refid="master-classpath"/>
<arg value="Ant"/>
</java>
<echo>开始运行java程序</echo>
</target>
-->
</project>
其中src目录下面是java源文件
classes目录下面是编译以后的class文件
dist目录下面存放生成的jar文件
lib目录下面是我们需要引用的jar文件
分享到:
相关推荐
`<manifest>`部分用于添加`JAR`的清单文件,`Main-Class`属性指定了程序的主类,使得`JAR`可以作为可执行文件运行。 在实际项目中,可能还需要其他任务,比如清理(`clean`)构建输出,或者进行单元测试(`junit`)...
这段代码告诉Ant从`src/main/java`目录下获取源代码,编译后放入`build/classes`目录,并且类路径包含`lib`目录下的所有JAR文件。 4. **打包与归档** 使用`jar`任务可以创建JAR或WAR文件,这是Java Web应用的标准...
在Java开发过程中,将源代码编译为class文件并打包成jar是常见的步骤。当我们有多个jar包相互依赖时,需要将它们合并成一个单一的jar,以便于部署和使用。Ant是一个流行的Java构建工具,它允许我们通过配置XML文件...
总的来说,使用Ant编译Java项目并创建jar包,你需要编写一个包含`<javac>`和`<jar>`任务的构建文件,同时可以利用Ivy管理依赖,Emma生成测试覆盖率报告,以及Ant Contrib中的额外任务来增强Ant的功能。通过这种方式...
在Java开发过程中,将代码打包成可执行的JAR(Java Archive)文件是常见的操作,这使得代码可以方便地分发、部署和运行。ANT是一个强大的构建工具,它使用XML来定义构建过程,包括编译、测试、打包等任务。本篇文章...
本文将探讨如何使用Ant来处理一个简单的场景:一个Java文件(JettySample.java)依赖于某个jar包(例如webserver.jar),并将其打包成可部署的格式。 1. 安装与配置Ant 在开始之前,确保已经在本地安装了Ant,并且...
标题中的“ant将依赖的jar包和classes文件一起打成可执行jar”指的是使用Apache Ant工具来构建一个包含依赖库和编译后类文件的Java应用程序可执行JAR文件。Ant是一个基于XML的构建工具,它允许开发者通过定义任务来...
本文将深入讲解如何使用Ant来打包Java项目为jar文件,并进一步将其制作成bat批处理文件,以便于双击运行。 首先,我们需要了解Ant的基本概念。Ant是Apache软件基金会的一个项目,它的设计目标是提供一个可配置的、...
标题中的“ant打包java project为jar”指的是使用Apache Ant工具将Java项目打包成JAR(Java Archive)文件的过程。Ant是Java开发中的一个构建工具,它以XML格式定义任务,可以自动化编译、测试、打包等流程。在这个...
运行Ant命令(例如`ant create-jar`),Ant会根据`build.xml`中的配置编译源代码并生成可运行的JAR文件`TestAntRunJar.jar`。 运行JAR文件,你可以使用以下命令: ```bash java -jar build/jar/TestAntRunJar.jar ...
9. **注意版本兼容性**:确保你的JAR文件与目标Java环境的版本兼容,即JAR中的类文件是为相应的Java版本编译的,否则可能会遇到运行时错误。 10. **JAR文件的安全性**:如果你想保护代码不被反编译,可以考虑使用...
在命令行中进入项目主目录并执行 `ant build` 命令,可以看到 `.class` 文件被放置在了 `\classes` 目录下。 6. **运行 Java 程序** 接下来,继续在命令行中输入 `ant run` 命令来运行程序,输出结果应为 "Hello...
在这个例子中,`clean`目标删除之前构建的目录,`compile`目标编译源代码,`jar`目标创建JAR文件,并在MANIFEST.MF中指定主类(Main-Class),而`run`目标运行生成的JAR文件。 标签“svnant-1.3.0”可能指的是...
Ant提供了丰富的内置任务,如`javac`(编译Java源代码)、`jar`(创建JAR包)、`copy`(复制文件或目录)等。每个任务都有自己的属性,如`javac`任务的`srcdir`和`destdir`分别指定了源代码和编译结果的目录。 三、...
在Java编程语言中,`class`和`jar`文件是两个关键的概念,它们与程序的编译和打包紧密相关。本文将深入探讨这两个文件类型,以及如何使用特定工具进行编译和反编译。 首先,`class`文件是Java源代码(`.java`文件)...
本质上,JAR 文件就是一个 ZIP 压缩文件,它可以包含多个 `.class` 文件、资源文件以及一个名为 `MANIFEST.MF` 的特殊文件,即 Manifest 文件。Manifest 文件用于存储有关 JAR 文件的信息,如版本号、主类名称和其他...
“ant-junit-1.6.1.jar”是Ant对JUnit支持的一个库文件,它包含了Ant运行JUnit测试所需的类和资源。这个版本(1.6.1)相对比较老,但仍然适用于许多遗留项目。当我们在Ant的构建脚本中配置JUnit任务时,需要引入这个...
在上面的示例中,`compile`任务负责编译源代码,`jar`任务生成JAR文件,而`create-bat`任务则创建一个bat文件,该文件运行`java -jar`命令来启动JAR文件。 3. **运行Ant**:打开命令行,导航到项目根目录,然后输入...
- **作用**:将所有的`.class`文件转换成`.dex`文件,以便在Android平台上运行。 5. **使用aapt打包项目的资源文件resources.ap_** - **工具介绍**:aapt再次发挥作用。 - **作用**:将资源文件(如图片、布局...
1. Apache Ant:Ant是Apache软件基金会的一个开源项目,它是一个基于Java的构建工具,通过XML文件定义任务来自动化构建过程,如编译、打包、测试等。Ant的核心是一个强大的任务执行系统,可以执行各种构建任务。 2....