У меня есть проект eclipse, в котором каждая исходная папка имеет свою собственную выходную папку. Вместо / classes она называется / eclipse-classes.
Итак, если у меня есть папка:
SRC / Main / Java (типичная вещь Maven)
целевая папка:
целевые / затмение-классы
И также для ресурсов и т. Д.
Это похоже на работу (то есть eclipse генерирует файлы .class, которые помещаются в эти папки), но при запуске любых тестов Junit выдается исключение, указывающее «класс не найден». Я запускаю JUnit, используя встроенный тестовый модуль eclipse (то есть щелкните правой кнопкой мыши класс, «запустить как», «Junit test»).
Копирование папки / eclipse-classes в / classes делает их успешными, что означает, что eclipse использует / classes, но я не могу найти какие-либо параметры конфигурации, чтобы изменить его. Есть ли способ узнать, где и почему Eclipse все еще использует папку / classes?
(возможно, актуально, я также использую плагин m2eclipse)
Некоторая дополнительная информация, вдохновленная ответом богатого продавца:
Maven настроен для запуска следующих изменений ресурсов:
process-resources resources:testResources
Хотя это не принесет ничего полезного (копирует в неправильный каталог), ресурсы не являются проблемными, поскольку они оказываются в правильном месте.
Записи .classpath выглядят хорошо. Существует множество подпроектов maven, поэтому вложение идет немного глубже, чем то, что написал Рич, но в остальном оно точно такое же, за исключением этой строки:
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
Я думаю, нам это может не понадобиться, но это ничего не ранит.
edit2: Дальнейшее тестирование показывает, что eclipse генерирует файлы классов как в папках / eclipse-classes, так и в папке / classes. Кажется, что m2eclipse запускает mvn build в фоновом режиме при автоматической сборке, но я не могу найти способ отключить это. Я постараюсь связаться с разработчиками m2eclipse, если у кого-то здесь нет других идей.