从2000年开始使用旧脚本。 它全部都在Java中,并且有一个构建文件可以编译所有内容:
<?xml version="1.0"?>
<project name="chat" default="compile" basedir=".">
<target name="init">
<property name="conf.dir" value="conf" />
<property name="src.dir" value="src" />
<property name="resource.dir" value="resource" />
<property name="build.dir" value="build" />
<property name="release.dir" value="release" />
<property name="etc.dir" value="etc" />
<property name="lib.dir" value="lib" />
</target>
<target name="clean" depends="init">
<delete dir="${build.dir}" />
<delete dir="${release.dir}" />
</target>
<target name="compile" depends="init">
<mkdir dir="${build.dir}" />
<javac srcdir="${src.dir}" destdir="${build.dir}" includeAntRuntime="false" debug="true" optimize="false" />
</target>
<target name="release" depends="compile">
<mkdir dir="${release.dir}" />
<jar destfile="${release.dir}/chat_service.jar" basedir="${build.dir}" includeantruntime="false" />
</target>
</project>
当我在Windows中使用ant运行它时,命令提示符显示:
Buildfile: build.xml
init:
compile: BUILD SUCCESSFUL
但它没有创建一个jar文件。 它所做的就是复制确切的项目并将其编译成类文件。
有谁知道如何创建正确的文件? 它是一个聊天服务器,我需要它来运行我的客户端。
答案 0 :(得分:4)
构建文件的默认目标是compile
:
<project name="chat" default="compile" basedir=".">
因此,如果在未指定目标的情况下调用ant,则将执行compile
目标。要执行release
目标,请使用
ant release
答案 1 :(得分:-1)
您应该添加另一个目标部分来生成jar文件。 例如:
<target name="jar" depends="compile">
<mkdir dir="${jar.dir}" />
<jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">
<manifest>
<attribute name="Main-Class" value="${main-class}" />
<attribute name="Class-Path" value="config/ properties/ ${manifest.classpath}" />
</manifest>
</jar>
</target>
最后,您当然应该为自己的文件和属性配置该块。