Eclipse - переопределить автоматически сгенерированный источник из другой исходной папки - PullRequest
4 голосов
/ 02 апреля 2012

У меня есть проект с двумя исходными папками. Folder1 - это автоматически сгенерированный набор исходных файлов java, к которым я не хочу прикасаться, Folder2 - это папка с небольшими изменениями некоторых из этих файлов.

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

Я попытался найти способ отключить ошибку «Тип X уже определен» в Eclipse, но не могу найти ее в разделе «Ошибки / предупреждения» в настройках. Я предполагаю, что отключение этой ошибки и правильная установка порядка приведут к тому, что компилятор будет использовать правильный файл из двух.

Очевидно, что я не хочу исключать все дубликаты в Folder1 из пути сборки вручную. Я не обязательно хочу, чтобы вы исправили мои настройки, если есть лучший способ полностью настроить это, не стесняйтесь предлагать. Помните, что что бы ни случилось, все источники должны находиться в одной папке bin из-за сложности пути, которую я не могу решить. Я также хотел бы избежать сценариев сборки, если это вообще возможно.

Ответы [ 3 ]

1 голос
/ 02 апреля 2012

Для вашего требования:

...ignore files from Folder1 if there is an edited file in Folder2...

Вам нужна файловая система наложения / объединения, в которой есть

a RO mount that contains your original file set 
a RW mount that initially contains nothing
an overlay/union mount for use by an application

Когда приложение обновляет файл, файловая система сохраняет файл в папку RW. Файловая система всегда скрывает файл в местоположении RO, если в местоположении RW существует файл с таким же именем.

Поначалу концепция будет звучать странно.

Попросите Google показать вам "Что такое файловая система overylay" и "Что такое объединенная файловая система", чтобы узнать больше.

1 голос
/ 31 марта 2015

Вы можете создать два проекта: prj1 имеет только Folder1, а prj2 имеет только Folder2.prj1 указан как необходимый проект на prj2.Таким образом, источники в Folder2 будут переопределять источники в Folder1.

1 голос
/ 02 апреля 2012

Когда у меня возникает такая проблема, я использую SVN, осторожно создаю новую ветку и работаю над ней.

После этого вам остается только перенести сложные пути сюда.

Если, как сказал Дейв Ньютон, вы можете считать, что это сломанный проект, это может помочь вам сохранить его.

...