将ant build.xml导入eclipse说在目标“编译”中找不到“javac”任务

时间:2013-06-01 17:07:51

标签: java eclipse ant hadoop javac

我在Mac OSX Mountain Lion上安装了jdk 6,我可以直接从eclipse创建新的java项目。

我正在尝试修改alex holmes在json-mapreduce (https://github.com/alexholmes/json-mapreduce)编写的代码。我的第一个目标是将代码引入eclipse构建,以便我可以调试代码。 我做了以下事情:

Launch Eclipse -> File -> New Project -> New project from ant build file 
-> select the build.xml downloaded from the above link

它会引发以下错误:

<> "javac" task not found in target "compile"
<> "java" task not found in target "test"

Eclipse显示代码,但不进行任何构建或运行任何测试。由于上面的错误,似乎出现了问题,但是我可以看到在eclipse中创建的其他java项目工作正常。

(Eclipse显示已安装的JRE位置:/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

欣赏任何想法。

2 个答案:

答案 0 :(得分:2)

根据我的经验,ant构建脚本 - 除非在设计时明确处理 - 过于非结构化,无法保证之后的IDE集成。

我们尝试使用ant4eclipse让ant编译现有的Eclipse项目(通过读取.project和.classpath文件)并且它不能很好地扩展。

如果您有时间和政治支持,您可能希望切换到 缩放的maven。但是,如果您当前的构建过程不符合“一个项目,一个生成的jar文件”,则可能需要相当长的时间。

如果不这样做,我建议您忘记让Eclipse处理build.xml并手动维护镜像build.xml配置的Eclipse项目,并在需要时从命令行运行ant(调试为如果需要,远程Java应用程序)。

答案 1 :(得分:-1)

您是否可以尝试在目标中设置java路径:

<target name="compile">
  <javac target="1.5" srcdir=.../>
</target>