Почему Maven's mvn clean никогда не работает с первого раза? - PullRequest
36 голосов
/ 23 октября 2009

В девяти случаях из десяти, когда я запускаю mvn clean в своих проектах, возникает ошибка сборки. Я должен выполнить mvn clean несколько раз, пока ошибка сборки не исчезнет. Кто-нибудь еще испытывает это? Есть ли способ исправить это в Maven? Если нет, как вы обойдете это? Я написал bat-файл, который удаляет целевые папки и работает хорошо, но это не практично, когда вы работаете над несколькими проектами. Я использую Maven 2.2.1.

[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failed to delete directory: C:\Documents and Settings\user\My Documents\software-developm
ent\a\b\c\application-domain\target. Reason: Unable to delete directory C:\Documen
ts and Settings\user\My Documents\software-development\a\b\c\application-domai
n\target\classes\com\a\b

[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 6 seconds
[INFO] Finished at: Fri Oct 23 15:22:48 EDT 2009
[INFO] Final Memory: 11M/254M
[INFO] ------------------------------------------------------------------------

Ответы [ 19 ]

1 голос
/ 19 октября 2012

У меня была такая же проблема. Я закрыл затмение и посмотрел на запущенные процессы в диспетчере задач и увидел один из них, называемый «Java.exe», который обычно не работает, поэтому я завершил его и затем снова запустил «mvn clean». Следует правильно удалить файл и работать правильно.

1 голос
/ 24 ноября 2009

У меня была такая же проблема со сборками, запущенными из Гудзона.

Используя handle.exe (от Sysinternals), я обнаружил, что у задачи java.exe есть активный дескриптор файла для сгенерированного файла jar.

Если я убью это задание, следующая сборка будет успешной. Но следующая сборка после этой успешной сборки снова завершается с той же ошибкой.

Даже если задача сборки выполнена успешно, она, похоже, не завершается должным образом и сохраняет открытые файлы.

Я новичок в Гудзоне, и у меня не было этой проблемы поначалу. Затем я поиграл с некоторыми плагинами, и позже эта проблема возникла и стала воспроизводимой.

Я деактивировал почти все плагины (оставил только некоторые важные, такие как Subversion и Sonar), и теперь проблема, похоже, решена.

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

1 голос
/ 23 августа 2010

Попробуйте отключить службу индексирования Windows.

0 голосов
/ 01 июня 2012

Решением является перезапуск Windows 7. Это помогает освободить ресурсы.

0 голосов
/ 27 апреля 2015

Вы должны закрыть все файлы в target, для меня, я лучше использую M2eclipse, вы также можете попробовать mvn clean

0 голосов
/ 27 сентября 2013

Приложение, которое вы запускаете, должно быть остановлено. Похоже, приложение все еще работает, пока вы пытаетесь очистить приложение.

0 голосов
/ 21 июня 2013

Если вы не хотите изменять настройки индексирования Windows, вы можете просто приостановить его.

0 голосов
/ 23 октября 2009

Это потому, что вы блокируете целевой каталог (открываете файл или входите в (под) каталог целевого каталога, или любой другой процесс / приложение использует файл из этого каталога). Если команда удаления Windows также жалуется, это не ошибка maven.

0 голосов
/ 17 января 2012

Что я обнаружил, так это то, что разработка Java с Maven в Windows 7 борется, когда исходный код находится на диске C. Перемещение моего кода на другой диск работает. Даже логический диск будет работать, диск не обязательно должен быть другим физическим жестким диском.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...