Невозможно удалить pom.xml в Jenkins под Tomcat / Windows - PullRequest
4 голосов
/ 07 марта 2012

Я некоторое время боролся с назойливой проблемой "Jenkins / Tomcat / Windows", не достигнув какого-либо решения.

Я установил Tomcat версии 7.0.25 на машине Windows 7 Enterprise иJenkins 1.451 в качестве веб-приложения под управлением Tomcat.У меня сейчас настроено всего 4 задания, и все они используют стратегию извлечения «Всегда проверяйте свежую копию», поэтому каждый раз, когда задание запускает содержимое в / jobs // workspace, удаляется.Но есть ситуации, в которых задание не выполняется, потому что оно не может удалить файл /jobs//workspace/pom.xml, как вы можете видеть в этой (отредактированной) трассировке стека:

Building in workspace C:\.hudson\jobs\<task name>\workspace
Cleaning local Directory .
java.io.IOException: Unable to delete C:\.hudson\jobs\<task name>\workspace\.\pom.xml
    at hudson.Util.deleteFile(Util.java:237)
    at hudson.Util.deleteRecursive(Util.java:287)
    at hudson.Util.deleteContentsRecursive(Util.java:198)
    at hudson.scm.subversion.CheckoutUpdater$1.perform(CheckoutUpdater.java:73)
    at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:136)
    at hudson.scm.SubversionSCM$CheckOutTask.perform(SubversionSCM.java:780)
    at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:761)
    at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:745)
    at hudson.FilePath.act(FilePath.java:788)
    at hudson.FilePath.act(FilePath.java:770)
    at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:735)
    at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:677)
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1195)
    at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:576)
    at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:465)
    at hudson.model.Run.run(Run.java:1409)
    at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:481)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
    at hudson.model.Executor.run(Executor.java:238)
Retrying after 10 seconds  

Здесьвы можете увидеть, как Tomcat блокирует файл, как я сказал:

Tomcat locking pom.xml

Через некоторое время Jenkins / Tomcat снимает блокировку с pom.xml, и я могу выполнить задание снова без проблем..

Кто-нибудь знает, как это обойти?Я что-то пропустил ?Заранее спасибо!

1 Ответ

0 голосов
/ 15 августа 2012

Я перешел на установку службы Windows, и файл pom.xml больше не блокируется.

Похоже, это вызвано тем, что Tomcat каким-то образом блокирует файл pom.xml, хотя сборка завершена.

...