用Ant打包java project,自动生成manifest文件。
<?xml version="1.0" encoding="UTF-8"?>
<project name="Alab" default="" basedir="" >
<property name="project.path" value="../"/>
<property name="src.home" value="${project.path}/src" />
<property name="lib.home" value="${project.path}/lib" />
<property name="build.home" value="${project.path}/bin" />
<property name="dist.home" value="${project.path}/dist" />
<property name="config.file" value="${project.path}/config.xml" />
<property name="jar.name" value="Alab.jar" />
<property name="mainclass" value="net.vnote.alab.AlabDaemon" />
<property name="build.date" value="20121106" />
<property name="component.name" value="alab" />
<property name="component.version" value="1.0.0" />
<property name="component.vendor" value="vnote.net" />
<target name="clean" description="clean">
<delete dir="${build.home}" includeEmptyDirs="true" />
<delete dir="${dist.home}" includeEmptyDirs="true" />
</target>
<target name="initial" description="initialization">
<mkdir dir="${build.home}" />
<mkdir dir="${dist.home}" />
</target>
<target name="compile" depends="initial" description="compile">
<javac srcdir="${src.home}" destdir="${build.home}" debug="on" optimize="on" deprecation="on" extdirs="${lib.home}" />
</target>
<target name="jar" depends="compile" description="Create jar and MANIFEST.MF">
<pathconvert property="libs.project" pathsep=" ">
<mapper>
<chainedmapper>
<!-- remove absolute path -->
<flattenmapper />
<!-- add lib/ prefix -->
<globmapper from="*" to="lib/*" />
</chainedmapper>
</mapper>
<path>
<fileset dir="${lib.home}">
<include name="**/*.jar" />
</fileset>
</path>
</pathconvert>
<jar jarfile="${dist.home}/${jar.name}" basedir="${build.home}" excludes="log4j.properties">
<manifest>
<attribute name="Main-Class" value="${mainclass}" />
<section name="common">
<attribute name="Specification-Title" value="${component.name}" />
<attribute name="Specification-Version" value="${component.version}" />
<attribute name="Specification-Vendor" value="${component.vendor}" />
<attribute name="Implementation-Title" value="${component.name}" />
<attribute name="Implementation-Version" value="${component.version} ${build.date}" />
<attribute name="Implementation-Vendor" value="${component.vendor}" />
</section>
<attribute name="Class-Path" value="${libs.project}" />
</manifest>
</jar>
</target>
<target name="distribute" depends="jar" description="Copy jar and resource to the dist.home">
<copy todir="${dist.home}/lib">
<fileset dir="${lib.home}" excludes="CVS" />
</copy>
<copy todir="${dist.home}">
<fileset file="${config.file}"/>
</copy>
</target>
</project>
分享到:
相关推荐
标题“ant打包java project为jar”揭示了我们讨论的核心技术——使用Apache Ant工具将Java项目打包成可执行的JAR(Java Archive)文件。Apache Ant是一个开源的构建工具,广泛用于Java应用程序的构建、测试和部署。...
**Ant入门教程——使用Ant自动生成JAR文件** Apache Ant是一个Java库和命令行工具,其任务是驱动构建过程。它是Java开发中的一个重要工具,尤其在自动化构建、编译、测试和部署应用程序时。本教程将带你深入了解Ant...
本文将深入探讨如何使用Ant将Java工程打包成bat可执行文件,并结合提供的`antBatTest`压缩包中的示例进行说明。 首先,我们需要了解Ant的基本概念。Ant是一个基于XML的构建工具,它的主要任务是编译、测试、打包和...
下面是一个简单的Ant构建文件(build.xml)示例,展示了如何使用Ant打包JAR: ```xml <project name="MyProject" default="jar"> ${build.dir}/classes"/> ${build.dir}/jar"/> ${build.dir}"/> ${...
`<project>`标签是构建文件的根元素,`<target>`标签用于定义一系列要执行的任务,`<taskdef>`用于引入自定义任务,`<property>`用于设置属性值,`<copy>`用于复制文件,`<jar>`用于创建JAR文件,`<javac>`用于编译...
当我们谈到“java用ant打包”时,通常指的是创建两种类型的可部署包:WAR(Web应用程序归档)和JAR(Java归档)文件。WAR文件用于部署Web应用程序,包含Servlets、JSPs和其他相关资源;JAR文件则用来封装Java类库,...
要使用ANT打包Java程序,你需要完成以下步骤: 1. **安装ANT**:访问Apache官方网站下载ANT的最新版本,解压后将其添加到系统的PATH环境变量中,这样你就可以在命令行中直接运行`ant`命令了。 2. **创建build.xml*...
可以设置manifest文件来指定主类和依赖。 6. **生成文档**:可选地,使用`javadoc`任务生成API文档。 7. **部署**:最后,可以将打包好的JAR文件和其他相关文件部署到服务器或其他目标位置。 在“anttest”压缩包中...
总结,Ant作为Java项目常用的构建工具,通过XML配置文件实现了自动化构建流程,包括清理、编译、打包等步骤。在处理Java文件依赖于jar包的场景时,可以通过设置classpath和manifest来确保正确运行。通过理解并掌握...
在Java开发中,Ant是一个非常重要的构建工具,它用于自动化构建过程,如编译、打包、测试等。本篇文章将详细介绍如何使用Ant工具将Java工程打包成可执行的JAR文件。 首先,我们需要了解Ant的安装和配置。Ant可以在...
3. **打包工具**:Java 提供了内置命令 `jar` 用于打包,但通常开发者会使用构建工具如 Ant 或 Maven 进行自动化处理。 - **Ant**:是一个基于XML的构建工具,通过编写build.xml文件来定义构建任务,包括打包JAR。...
然后,我们需要创建一个`package`任务,该任务会调用`apkbuilder`,将编译后的类文件、资源文件以及manifest文件打包成APK。在`package`任务中,可以设置`signed`属性为`true`,表示需要对APK进行签名。如果需要,还...
例如,`ant打包`可能指的是使用Ant来创建JAR文件,这是一种将多个Java类文件合并到一个单一的归档文件中的过程。这有助于简化分发和执行,因为用户只需要一个文件就能运行整个程序。 描述中提到的"ant打包,可以...
7. IDE集成:现代的Java集成开发环境(IDE),如IntelliJ IDEA和Eclipse,都内置了打包功能,用户可以在图形界面上配置并生成JAR、WAR或EAR文件,简化了开发流程。 8. 打包优化:除了基本的打包,我们还可以进行...
整体思路分为两步:首先将 Java 项目打包成 jar 文件,然后再将 jar 文件进一步打包成 exe 文件。具体步骤如下: ### 一、生成 JAR 文件 1. **使用 Eclipse 打包成 JAR 文件** - **方法一**:利用 Eclipse 自带的...
-- 可选的manifest文件和其他资源 --> ``` 5. **运行测试**:如果项目包含单元测试,可以使用JUnit或其他测试框架,定义一个测试目标来运行它们。例如: ```xml ${build.dir}"/> <!-- 测试所需的类...
- **jar任务**:创建Java档案(JAR)文件,可以包含manifest文件和类路径。 - **delete任务**:删除文件或目录,常用于清理构建过程产生的临时文件。 - **mkdir任务**:创建目录,为其他任务提供工作空间。 4. *...
在Ant中,`jar`任务用于创建`.jar`文件,可以设置manifest文件,指定主类和其他元数据。 以下是一个简单的`build.xml`示例: ```xml <project name="TestAntUse" basedir="." default="all"> ...
`<jar>`任务用于将编译后的类打包成jar文件,可以设置manifest文件、包含的文件和目录,以及jar的名称。例如: ```xml <manifest> </manifest> ``` 在提供的文件列表中,我们看到了`ivy-1.4.jar`和`ivy-...
《Ant权威指南》是一本深度解析Apache Ant工具的著作,对于Java开发者而言,它是构建自动化不可或缺的参考书籍。Ant作为一款开源的构建工具,广泛应用于Java项目中,它使用XML来描述构建过程,使得构建脚本具有良好...