it-swarm.com.ru

Maven Не удалось выполнить цель org.Apache.maven.plugins: maven-clean-plugin: 2.5: clean Не удалось удалить access_log

Я пытаюсь запустить проект простых стоек, используя Maven и Tomcat.

Когда я пытаюсь определить следующие цели: clean install Tomcat7:run я получаю MojoExecutionException:

[ERROR] Failed to execute goal org.Apache.maven.plugins:maven-clean-plugin:2.5:clean
(default-clean) on project myproject: Failed to clean project: Failed to delete
D:\EclipseWorkspace\myproject\target\Tomcat\logs\access_log.2015-02-21
-> [Help 1]

Я погуглил и понял, что Tomcat использует этот файл access_log, где он регистрирует запросы пользователей. И к тому времени, когда я захочу выполнить цели, перечисленные выше, так как я использую Eclipse IDE, JVM отказывается от удаления этого файла.

Я видел те же вопросы: Не удалось выполнить цель org.Apache.maven.plugins: maven-clean-plugin: 2.4.1 , Maven - Не удалось выполнить цель org.Apache.maven.plugins: maven-clean -плагин: 2.4.1: чистый .

Но не понимаю предложенные решения такой проблемы.

5
marknorkin

Я видел подобные ошибки, когда есть процесс, который удерживает блокировку файла в некоторой подпапке, которую Maven пытается очистить. Убедитесь, что ваш экземпляр Tomcat действительно остановлен (поищите процессы Java в диспетчере задач, которых там быть не должно). Я также создал эту проблему для себя, открыв журнал доступа в текстовом редакторе, а затем забыл закрыть редактор после закрытия Tomcat и попытки запустить новую сборку.

17
Michael Peacock

Micahel Peacock и khmarbaise были правы насчет того, что какой-то процесс блокирует удаление.

Это совет для начинающих новичков, таких как я.

Я столкнулся с такой проблемой, потому что после запуска Tomcat с maven цели clean install Tomcat7:run я остановил его либо через пакетный файл shutdown в каталоге ${CATALINA_HOME}/bin, либо через установленный плагин Eclipse Tomcat, нажав на следующую метку:

menu panel

Но чтобы сделать это правильно, вы должны нажать на метку остановки в представлении консоли:

console view

Тогда экземпляр языка Tomcat будет остановлен, и такие ошибки не появятся, потому что процесс будет корректно завершен.

2
marknorkin

У меня была такая же проблема в Fedora. В моем случае владелец целевого каталога был изменен на root Usring -> [chown your-username target] Я исправляю это. 

0
mohsen.nour

Просто закройте командную строку и снова запустите ее от имени администратора, а после этого запустите команду maven, то есть Mvn clean, тогда она будет работать нормально :) 

0
Vivek Jain