2012-05-28 4 views
7

У меня есть файл build.xml, и я хочу создать проект Java из существующего Ant Buildfile. Но у меня есть ошибка: указано Buildfile не содержит задачу JAVAC Мой файл имеет простую структуру:Ant buildfile не содержит задачи javac

<project> 
    <target ...> 
    </target> 
    ... 
</project> 
+0

И имеет ли он задачу javac? Что вы ожидаете от eclipse, если ваш файл сборки не состоит в компиляции исходного кода Java? –

+1

Вы можете указать макросы, которые строят все проекты, аналогичные настройке родительского/модуля с Maven. У меня та же проблема; Я могу создать проект из командной строки, но не могу импортировать его в Eclipse. – Ryan

ответ

0

Вам нужно что-то вроде этого,

<target name="compile"> 
    <javac destdir="build/classes" srcdir="src" includeantruntime="false"> 
    <classpath refid="compile.classpath"/> 
    </javac> 
    </target> 

    <target name="war" depends="compile"> 
    <war destfile="build/${name}.war" webxml="WebContent/WEB-INF/web.xml"> 
    <fileset dir="WebContent" casesensitive="no"> 
    </fileset> 
    <lib dir="WebContent/WEB-INF/lib"/> 
    <classes dir="build/classes"> 
    </classes> 
    </war> 
</target> 
3

Обеспечить JAVAC вашему build.xml как показано ниже:

<javac srcdir="src" destdir="bin" /> 
+0

Работал. Спасибо! – marlar

1

Как Puneet Пандей отметил, эта ошибка возникает, когда файл build.xml является lackin g a <javac> Элемент XML.

<javac> XML элемент в build.xml файле (именуемый javac task) сообщает компилятор или IDE (Eclipse, в данном случае), где исходные файлы Java являются для компиляции. Как только вы узнаете, что должно быть совершенно понятно, почему Eclipse не может импортировать ваш build.xml без элемента XML <javac>.

В случае, если вы не знаете, где положить знак <javac>, я добавлю немного более полный пример. Вам нужно будет перейти к build.xml и отредактировать его так, чтобы он содержал строку <javac> в соответствующем разделе внутри тег <project>.

<project ...> 
    <javac srcdir="src" destdir="bin" /> 
    <target ...> 
    </target> 
    ... 
</project> 
Смежные вопросы