Почему затмение пытается скопировать мой.svn папки из src в bin, и как я могу сделать это остановить?


Я проверил кучу java-кода с помощью subversion 1.6, а затем импортировал эти проекты в eclipse. Subclipse 1.6 подхватил тот факт, что плагины находятся под управлением версий, за исключением нескольких папок.

Теперь я получаю кучу ошибок, таких как:

Ресурс является дубликатом src/.svn / all-wcprops и не было скопировано в выходную папку

Если я удалю проект (из eclipse не на диске) и повторно его импортирую, это исправит проблему о в половине случаев. Но так как у меня есть десятки проектов, в которых есть эта проблема, это означает, что я перепрофилирую их 10-20 раз, прежде чем они все заработают. Это очень болезненно, и я устал делать это каждый раз, когда кто-то добавляет новый плагин в svn или когда мне нужно воссоздать рабочее пространство по какой-то причине.

Есть ли более простой способ исправить это, чем удалить и повторно импортировать? Или есть способ предотвратить эту проблему в первую очередь?

6 35

6 ответов:

Это происходит потому, что вы проверили проект с помощью клиента SVN, отличного от Eclipse, а затем импортировали проект в Eclipse, и вы не уведомили Eclipse, что это проект SVN (то есть Eclipse не знает, что он должен игнорировать метаданные SVN).

Чтобы исправить это должным образом, после импорта проекта в Eclipse, попросите Eclipse быть "осведомленным" о природе SVN проекта. Сделайте это с помощью

  1. Выберите проект и перейдите в команду > поделиться раздел.
  2. появится диалоговое окно с запросом погоды это проект CVS или SVN. Выберите более поздний вариант.
  3. он запросит учетные данные, введите их.
  4. Когда закончите, сделайте чистую сборку. Проблема исчезает.

Добавьте .папка svn в список исключенных для исходной папки.

  • Проект - > Свойства
  • Java Build Path
  • вкладка Источник
  • Выберите "Исключено"
  • Нажмите
  • Нажмите кнопку рядом с разделом Шаблоны исключений внизу
  • Добавьте .папка svn и любые другие, которые не нужно копировать в выходной каталог

Следуйте процедуре, описанной Келли, но определите шаблон исключения как **/.svn/*. Это рекурсивно исключит все каталоги .svn из различных исходных папок.

Более простой способ сделать это:

  • Проект > Свойства
  • Ресурс > Фильтры Ресурсов > Добавить...
  • Тип фильтра > исключить все
  • применяется к > папкам
  • проверить всех детей (рекурсивно)
  • атрибуты файлов и папок > тип".svn "
  • нажмите OK и еще раз OK
  • Очистить / построить

------------ простой способ фильтрации выходной папки-------------

Окно - > Настройки - > Java - > Компилятор - > Сборка
Убедитесь, что " фильтруемые ресурсы "включают".svn/ "

"принятый лучший ответ" описал мне причину, но поскольку мой проект уже был разделен, я 1. закрыл проект, 2. откройте его снова и 3. очистить его. То.папка svn исчезла и больше не возвращается.