Maven scm: checkin "Ресурс не синхронизирован с файловой системой:" ошибка - PullRequest
1 голос
/ 06 сентября 2010

Я пытаюсь заставить плагин релиза Maven работать с системой контроля версий Jazz.net и Rational Application Developer (RAD, основанной на Eclipse), но мне кажется, что я столкнулся с ловушкой-22 - я ожидаю, что ' мы что-то неправильно поняли.

Итак - я работаю над командной строкой в ​​каталоге проекта, в котором находится файл .pom. Я должен выключить RAD, в противном случае у меня возникают проблемы с блокировкой ресурса.

Когда я запускаю mvn release:prepare, Maven генерирует кучу новых файлов в моем рабочем пространстве RAD / Eclipse и изменяет pom.

Следующее, что происходит, это то, что плагин релиза пытается mvn scm:checkin pom, и я получаю zillion трассировки стека, говоря Resource is out of sync with the file system для файла pom, и процесс завершается неудачей.

Так что я не могу подготовить свой релиз в RAD, так как порожденный Maven жалуется на блокировку файла. Я не могу подготовить свой выпуск в командной строке, так как Maven жалуется, что RAD не знает об изменениях в pom - кажется, я не могу сообщить RAD об этих изменениях, не запустив его.

Что я делаю не так?

1 Ответ

0 голосов
/ 06 сентября 2010

Чтобы исправить «Ресурс не синхронизирован», включите «Обновлять автоматически» в настройках «Общие / Рабочая область». Обратите внимание, что RAD / Eclipse требуется несколько секунд, чтобы заметить, что файлы изменились. Поэтому я сомневаюсь, что это сильно поможет.

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

Что мне интересно, хотя: «Ресурс не синхронизирован» - это ошибка Eclipse. Это не должно беспокоить плагин scm в Maven - он работает на другой виртуальной машине. Поэтому отключение RAD во время выпуска должно работать.

...