Вы можете разделить все ваши тесты в другой проект и добавить основной проект в качестве зависимости (Проект-> Свойства ->Java Построить Путь ->Проекты ->Добавить ...)
Обновление: Чтобы избежать изменения исходной структуры проекта, ваши тестовые проекты могут использовать связанные местоположения.
Создайте тестовый проект как обычно, теперь вам нужно создать связанный ресурс, чтобы вставить папку src/test/java. Лучше всего создать его с помощью переменной, чтобы ваши проекты могли сохранять определенную независимость от платформы. Чтобы создать новую связанную папку выберите New ->Папка, вход ЦСИ имени в папке : поле и нажмите Дополнительно >>
Нажмите Ссылка на папку в файловой системе Нажмите на Переменные ..., чтобы открыть Выбрать путь Переменная диалог.
Если это ваш первый визит или вы собираетесь в новое местоположение, выберите Новый ... и введите переменную разумное имя и путь. Если все ваши проекты расположены в c: \ workspaces \ foo **, имеет смысл вызвать переменную ** WORKSPACE_ROOT и указать ей этот путь. Если у вас есть какое-то другое соглашение, это нормально, но имеет смысл поставить комментарий в файл .project, чтобы у кого-то появилась возможность выяснить, каково должно быть правильное значение.
Предполагая, что значения выше теперь вы можете установить значение WORKSPACE_ROOT/[при условии название проекта]/Src на поле
ввода После того, как вы подтвердите, что вы должны увидеть папку Src с маленькой стрелкой, и если вы посмотрите в .project файле увидеть что-то вроде этого:
<linkedResources>
<link>
<name>src</name>
<type>2</type>
<locationURI>WORKSPACE_ROOT/esf-ns-core-rp/src</locationURI>
</link><!--NOTE the WORKSPACE_ROOT variable points to the folder containing the subject project's sandbox-->
</linkedResources>
Теперь вы можете добавить папку SRC/тест/Java в качестве исходного местоположения в обычном режиме.
Примечание Вы также можете поделиться только папку SRC/тест/Java, изменив конфиг-то вроде этого:
<linkedResources>
<link>
<name>src/test/java</name>
<type>2</type>
<locationURI>WORKSPACE_ROOT/my-project/src/test/java</locationURI>
</link>
</linkedResources>
Это дает больший контроль над конфигурации, но вам придется повторить для SRC/тест/ресурсы, src/it/java и т. д.
Затем вы устанавливаете все тестовые зависимости только в тестовом проекте.
Очень не красиво, но он работает (я также использовал это, когда уровень соответствия теста отличается от основного уровня соответствия, например, 1,5 для тестов, но 1,4 для целевой среды).
Я делаю это в большом приложении, разработанном многими людьми. Я надеюсь, что мы скоро перейдем в Maven, поэтому я бы не прочь проглотить трюки (которые можно удалить, когда мы на Maven/M2Eclipse), но изменив структуру проекта, которая на данный момент выходит за рамки. –
Я бесстыдно скопировал некоторые части вашего ответа в своем (http://stackoverflow.com/questions/1470827/external-output-folder-in-eclipse/1470833#1470833), поэтому +1;) – VonC