Нужна помощь в написании пользовательского BuildListener - PullRequest
1 голос
/ 08 октября 2008

Я хотел бы добавить BuildListener к моему процессу безголовой сборки, который является сборкой продукта Eclipse. Документы о том, как это сделать, скажем так, немного скудны. Я думаю, что мне нужно поместить свой пользовательский jar в плагин, а затем использовать точку расширения org.eclipse.ant.core.extraClasspathEntries, чтобы сделать этот jar видимым для Ant. Но все, что я пробовал, приводит к

[myClass] which was specified to be a build listener is not an instance of org.apache.tools.ant.BuildListener.

Мой класс реализует интерфейс BuildListener. Кажется, что различные публикации указывают на то, что это означает, что мой класс виден / загружен загрузчиком классов Plugin, а не загрузчиком классов Ant. Но я думал, что весь смысл точки расширения в том, чтобы сделать банки видимыми для Ant ...

Может кто-нибудь пролить свет на то, что я делаю не так? Дополнительная информация: в данный момент я пытаюсь запустить эту сборку из Eclipse IDE с помощью приложения AntRunner.

Ответы [ 2 ]

1 голос
/ 09 октября 2008

У меня была эта проблема, когда у меня было два плагина, обеспечивающих ant.jar.

Убедитесь, что вы используете плагин org.apache.ant и что нет другого плагина, предоставляющего другой ant.jar.

Еще одна вещь, на которую я только что наткнулся: банка, содержащая ваш вклад, не должна находиться в classpath плагинов (Runtime -> Classpath).

См. Eclipse Bug 34466 .

0 голосов
/ 22 октября 2008

Следуйте инструкциям для работы с заданными задачами и типами, найденными здесь: Разработка задач Ant и Внесенные задачи Ant

...