Eclipse обрабатывает все файлы в проекте как производные

#eclipse

Вопрос:

Я создал динамический веб-проект в своей рабочей области Eclipse. Это также проект Maven, и он находится под контролем SVN. Но в «Открыть ресурс» (Ctrl Alt R) файл из этого проекта не отображается, если я не проверю параметры окна (раскрывающийся список справа вверху) «Показать производные ресурсы».

Я проверил некоторые папки проекта, и они не помечены как «Производные».

У меня есть еще два (простых Java) проекта в рабочей области, и все файлы из них видны в разделе «Открытый ресурс».

Знаете ли вы, что может быть не так с Eclipse, плагином Maven или подклипсом (плагином SVN)?

Комментарии:

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

Ответ №1:

Я столкнулся с аналогичной проблемой в Eclipse (Ганимед) при использовании плагинов Maven и Subclipse. Я не определил, какой плагин вызвал эту проблему, но я подозреваю, что это связано с моим pom.xml содержащий вложенные модули (т. е. a <modules><module>main-module</module><module>integration-test</module> ). Они отображаются в Eclipse как вложенные папки со своими собственными pom.xml файлы (я не использовал плагин для нескольких проектов, хотя я его установил).

Я предполагаю, что один из подключаемых модулей неправильно установил производный флаг для этих папок, когда я проверил проект с помощью SVN, а затем обновил зависимости MVN и настройки проекта.

Когда я щелкаю правой кнопкой мыши->свойства в каталогах вложенных модулей верхнего уровня, я вижу, что установлен производный флаг. Сняв флажок «выводить» в каталогах модулей (и вместо этого установив флажок «выводить» в целевых каталогах в каждом подмодуле), он исправил функциональность открытых ресурсов.

Поскольку производный флаг наследуется от каталогов, вам может потребоваться проверить все ваши каталоги в иерархии, чтобы найти «виновника».

Если это поможет авторам подключаемых модулей, мои каталоги модулей верхнего уровня содержат дефис » — » в их именах. Может быть, это выбрасывание одного из плагинов.

Комментарии:

1. Спасибо, Алекс, что пометил мои «целевые» каталоги вручную, как производные, сделал свое дело. Немного вручную, но это сработало 🙂

Ответ №2:

Я думаю, что это плагин maven:

Проблема с Jira

Смотрите также примечания за 31 июля 2008 года на Новой и примечательной странице для m2eclipse.

Несколько других хороших ссылок удалены из-за ограничений stackoverflow.

Ответ №3:

На самом деле, я думаю, что каким-то образом это eclipse само по себе, так как у меня нет m2eclipse или я не использую maven для этого.

По умолчанию eclipse использует /bin в качестве целевого каталога. Моя ситуация похожа на наличие maven в проекте в том, что целевой каталог был изменен на lib/classes для размещения существующего проекта.

Я начал видеть проблемы, аналогичные тем, о которых сообщается здесь, и во время поиска проблемы наткнулся на это решение. Eclipse каким-то образом не «снял» флажок с каталога bin как больше не производного, поэтому я столкнулся с теми же проблемами. Я попытался воспроизвести его, но не смог.