2012-05-15 74 views
3

我对Ant完全陌生,需要在我的类路径中添加几个jar文件,编译一对.java文件并运行junit测试,所有这些都在Ant中完成。我一直在寻找一些在线教程和手册,但似乎无法将我的头围绕整个xml写入过程。Classpath,编译并运行Ant?

所有以前编写的代码都驻留在一个名为XXX的目录中。

XXX有两个罐子我需要添加到我的类路径export CLASSPATH=$CLASSPATH:jar1:jar2,两个Java文件我javac *.java编译,其中一个包含了我java org.junit.runner.JUnitCore Tests运行几个JUnit测试。 build.xml也将驻留在XXX(我相信)。

到目前为止,我只是编译以下内容,尽管我认为有很多缺失。

<?xml version="1.0"?> 
<project name="EtlAutomation" default="compile" basedir="."> 

    <property name="src" value="${basedir}"/> 

    <target name="compile"> 
     <!-- Compile .java files --> 
     <javac srcdir="${src}" destdir="${src}"/> 
    </target> 

</project> 

我还需要添加什么来编译当前目录中的*.java?我如何运行export CLASSPATH命令,最后是junit表示推荐?

我不是要求任何人写我的代码,但它将不胜感激。如果有人知道一个unix环境的初学者教程,那会很棒。我是一个总共有蚂蚁的初学者,所以我会拿我能得到的。

+0

你应该从Ant手册中的'javac'任务文档开始,它的所有描述都在这里(http://ant.apache.org/manual/index.html )。特别是,查找嵌套的''元素,忘记'export',它不在Ant中使用。 – skaffman

+0

感谢您的提示(和问题编辑)!我现在正在浏览手册,稍后会回顾一下,希望能够理解我得到的任何答案。 – Chris

回答

1

Here是解决这个问题的上一个问题。这可能适用于你:

<project name="EtlAutomation" default="compile" basedir="."> 
    <property name="src" value="${basedir}"/> 
    <path id="compile.classpath"> 
     <fileset dir="./"> 
      <include name="*.jar"/> 
     </fileset> 
    </path> 
    <target name="compile" > 
     <javac destdir="${src}" srcdir="${src}"> 
      <classpath refid="compile.classpath"/> 
     </javac> 
    </target> 
    <target name="run" depends="compile"> 
     <junit> 
      <classpath refid="compile.classpath" /> 
       <test name="TestExample" /> 
     </junit> 
    </target> 
</project> 
+0

嘿RajChola,你对[this?]有什么想法(http://pastebin.com/chVzWvcG)我是否在图片中留下了很大的东西?没有具体的,但任何一般重要的事情要考虑/ readdress? – Chris

+0

我认为你有几个错误。我不认为你可以使用这样的参数。如果它有效,你不会留下任何东西。无论我的想法是什么。运行它,看看你得到什么错误,然后尝试纠正它们。 – Sridhar

+0

更改以下内容1)default =“run”2)而不是args =“...”3)将错误修正为 Sridhar