Обновление проекта Eclipse с помощью Ant

У нас есть сценарий Ant для создания различных jar-файлов, которые мы используем в нескольких проектах Eclipse. Существует некоторая взаимозависимость

В конце сборки мы должны обновить некоторые проекты Eclipse, чтобы сделать путь сборки действительным. Без этого он не видит ни одного из только что созданных jar-файлов, и Eclipse выдает ошибку пути сборки.

Есть ли способ избежать ручного обновления?


person Antoine Claval    schedule 12.06.2009    source источник


Ответы (5)


Попробуй это:

<eclipse.refreshLocal resource="project_name/folder_name" depth="infinite" />

Есть опция детали в справочной системе Eclipse.

Важно: вы должны выбрать «Выполнять в той же JRE, что и рабочая область» в конфигурации запуска Ant.

person Roman P    schedule 12.06.2009
comment
Как сказал Роман, важно запускать в той же JRE, что и рабочее пространство, а не из JRE или JDK, которые вы настроили. - person Stephane Grenier; 13.09.2011

Вы можете включить «Обновлять автоматически».

См. Окно->Настройки->Общие->Рабочее пространство->Обновлять автоматически.

и он будет отслеживать изменения файловой системы для вас.

person Scott Stanchfield    schedule 12.06.2009
comment
Опция теперь называется «Обновить» с использованием встроенных перехватчиков или опроса, что немного менее интуитивно понятно, чем «Обновлять автоматически». - person Rikki; 09.12.2011

Если вы запускаете сценарий ant из eclipse, вы можете щелкнуть его правой кнопкой мыши и выбрать «Запустить от имени >», затем «Сборка Ant...». В параметрах запуска сценария есть панель «Обновить», которую вы можете выбрать для обновления различных вещей после завершения сценария.

person Shadwell    schedule 12.06.2009

Возможно, это не совсем ответ на ваш вопрос, но я не совсем понимаю, в чем проблема.

Насколько я понимаю, у вас есть проект A, который создает файл jar, и на этот файл jar ссылается проект B. Когда вы пересобираете проект A, вам нужно обновить его, чтобы проект B мог видеть новый файл jar. Это правильно?

Я делаю что-то подобное, но не получаю никаких ошибок пути сборки, потому что имя файла jar проекта не изменилось.

Другой вариант — для проекта B напрямую ссылаться на проект A, а не на его jar-файл.

Я думаю, что, возможно, неправильно понял проблему, с которой вы столкнулись, но я надеюсь, что это все равно поможет.

person KevinS    schedule 17.06.2009

это можно сделать, следуя задачам Ant, предоставляемым платформой Eclipse.

<eclipse.refreshLocal resource="MyProject/MyFolder" depth="infinite"/>

Примечание. Убедитесь, что Ant запущен на той же виртуальной машине, на которой запущена рабочая область Eclipse. Подробности см. по следующим ссылкам.

person Ahmad Nadeem    schedule 30.10.2017