2010-02-11 3 views
2

Я использую MyEclipse 8.0 для разработки проекта Spring Batch. Недавно я добавил MySQL в перспективу проводника базы данных, и теперь, когда я пытаюсь выполнить «mvn clean» в моем проекте, он терпит неудачу, потому что он не может удалить mysql-connector-java-5.1.6.jar из целевой папки lib , Я попытался вручную удалить эту банку, но я получаю это всплывающее окно, в котором говорится, что он используется другим человеком или программой. До сих пор единственный способ, которым я нашел продолжение, - закрыть MyEclipse каждый раз, когда мне нужно запустить еще один тест. Эта проблема не возникает с какой-либо другой базой данных, которую я использую (DB2).Maven clean can not delete MySql jar

ответ

1

Ну, хорошо или плохо, факт в том, что файл заблокирован другим процессом, и удаление не удалось. При настройке проводника базы данных попробуйте использовать банку MySQL из локального репозитория, а не в целевом каталоге. Это должно решить вашу проблему.

+0

Проблема в том, что Maven сохраняет или оставляет эту банку в целевой директории после каждого теста; но я понятия не имею, почему и как. Кажется, что Maven избавляется от банок DB2 после каждого теста, но не от MySQL. –

+0

@Mike Возможно, я что-то упустил, но мое понимание вашего вопроса в том, что проводник базы данных блокирует mysql jar, а не maven. Но я могу ошибаться. –

+0

Трудно сказать ... не был уверен, где спросить об этом изначально. После запуска теста целевая библиотека содержит все банки зависимостей Maven. «Очистить» успешно удаляет все, пока не встретится с MySQL. Возможно, это вопрос для поддержки MyEclipse. Спасибо. –

2

Иногда Windows Explorer не освобождает блокировки файлов для объектов в целевом каталоге. Попробуйте использовать Process Explorer, чтобы узнать, что блокирует файл. Затем вы можете использовать его для освобождения блокировки, если это не имеет значения. После этого вы mvn clean будете работать нормально.