2014-10-29 2 views
6

У меня есть рабочий набор Eclipse (4.4.1), состоящий из ~ 60 проектов (это может быть актуально, так как требуется время для обновления рабочей области). Иногда я сталкиваюсь строить неудачи потому, что Eclipse, не в состоянии очистить папку вывода, прежде чем строить:Eclipse не удалось очистить вывод сборки

Eclipse build problem

Оказалось, что процесс, который блокирует файл сам по себе Eclipse:

enter image description here

Также выяснилось, что блокируемые файлы всегда содержат XML-контент. В частности, если я определяю ресурсы с расширением *.foo как файлы XML (через Предпочтения -> Общие -> Типы контента), есть хорошие шансы, что они также будут заблокированы, как только они будут скопированы в выходной путь.

Я думал, что проблема была вызвана всеми XML-ресурсами, автоматически проверяется:

enter image description here

- так что я добавил исключение фильтры 1-го и даже отключил XML/XSD проверку целиком. Проблема перестала происходить часто, но все же время от времени появляется. Обновление или закрытие-повторное открытие проекта не рекомендуется.

Единственное средство - перезапуск Eclipse или запуск Unlocker каждые полчаса, что не очень удобно.

Любые идеи, как решить или, по крайней мере, дополнительно диагностировать это?

+2

это звучит как отличный вопрос, чтобы спросить сообщество Eclipse, поскольку это очень похоже на ошибку в Eclipse. –

+0

В качестве возможной причины проверьте TaskManager для любых дополнительных процессов java.exe, которые активны во время сбоя. Я считаю, что у меня была аналогичная проблема. – Compass

+1

«Подвеска всех валидаторов» работает для вас? Я знаю, что это рискованно, но действительно ли вы хотите проверить все xml все время? – ha9u63ar

ответ

1

Предполагая, что XML Валидация является основной причиной вашей проблемы, я предлагаю вам расширить поиск точек проверки в конфигурации ваших проектов, чтобы выделить все из них:

  • Общие настройки/проверки
  • общих предпочтения/файлы XML/XML/Validation (опция «чтят все места схемы» может быть причина задержки при проверке)
  • предпочтения проекта/Validation (проверить их, может быть переопределение общих предпочтений)
  • настройки проекта/Bu ilders/Validator

Надеюсь, это поможет.

+0

Спасибо. Все они уже не отмечены. – Bass

+0

Извините, бас, но я не понимаю: если бы мой ответ вам не был полезен, я думаю, вы по ошибке наградили меня щедростью. –

+0

Нет, нет ошибки. Я считаю, что ваш ответ был ближе всего к истине. Есть проблема с WST/WTP, и проверка XML является особенностью этого плагина. – Bass

2

Отключить сторонние демоны контроля версий. (Как TGitCache).

Они блокируют ресурсы в течение короткого времени и не видны в Process Explorer, но являются наиболее частыми причинами таких сбоев.

+0

Это была моя идея. Поэтому я отключил «TGitCache.exe» и даже «un-shared» мои проекты. Тем не менее проблема остается. – Bass

1

У меня возникли аналогичные проблемы. Да, количество проектов, вероятно, является причиной. Закройте проекты, которые не используются. Если это очистит вещи, вам помогут подвижные группы связанного проекта с отдельными рабочими пространствами.

т.е. Файл-> Закрыть проект

+0

Спасибо за ваш комментарий. Проблема в том, что я фактически использую эти проекты. – Bass

3

Просто мои 2 цента.

Возможно, вы можете решить эту проблему, следуя этим шагам:

  1. Проект -> Свойства -> Строители -> New -> Программа
  2. Определение пользовательского "Чистильщик" -Программа, например Unlocker или ваш собственный Java- или CMD-скрипт
  3. Переместите свою пользовательскую Builder-программу вверх. Это должно быть первым Builder в списке

P.S. несколько раз я подобные проблемы, вызванные Антивирусный сканер Avira ...

1

Я не знаком с этой проблемой, но я хотел бы решить эту проблему следующим образом:

  1. скачать File Leak Detector
  2. добавить agentpath к вашему eclipse.ini (например, -javaagent: путь/к/файлу-просачиванию detector.jar = HTTP = 19999 см документации файл течеискатель)
  3. , когда проблема возникнет снова, увидеть, (класс eclipse) отвечает за держа ручку файла
  4. Узнайте, что цель класса, который держит ручку

Таким образом, вы, возможно, в состоянии придавить функцию Eclipse, которая вызывает проблему.

+0

Спасибо, _File Leak Detector_, вероятно, отличный инструмент, но на моем ПК он разбивает любые JVM, к которым он пытается подключиться. – Bass

Смежные вопросы