java - Jenkins Tomcat 部署错误

标签 java tomcat jenkins

我使用 Jenkins 与我的 Java 项目进行持续集成已经有一段时间了。

最近我尝试使用 Jenkins 部署插件 ( https://wiki.jenkins-ci.org/display/JENKINS/Deploy+Plugin ) 在 tomcat 7 上部署我的 war 文件。但是,我无法这样做,因为我收到以下错误:

    Deploying C:\Program Files (x86)\Jenkins\jobs\MY_PROJS\workspace\target\projs.war to container Tomcat 7.x Remote
      [C:\Program Files (x86)\Jenkins\jobs\MY_PROJS\workspace\target\projs.war] is not deployed. Doing a fresh deployment.
      Deploying [C:\Program Files (x86)\Jenkins\jobs\MY_PROJS\workspace\target\projs.war]
    ERROR: Publisher hudson.plugins.deploy.DeployPublisher aborted due to exception
    org.codehaus.cargo.container.ContainerException: Failed to deploy [C:\Program Files (x86)\Jenkins\jobs\MY_PROJS\workspace\target\projs.war]
        at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.deploy(AbstractTomcatManagerDeployer.java:115)
        at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:187)
        at hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:64)
        at hudson.plugins.deploy.CargoContainerAdapter$1.invoke(CargoContainerAdapter.java:90)
        at hudson.plugins.deploy.CargoContainerAdapter$1.invoke(CargoContainerAdapter.java:77)
        at hudson.FilePath.act(FilePath.java:914)
        at hudson.FilePath.act(FilePath.java:887)
        at hudson.plugins.deploy.CargoContainerAdapter.redeploy(CargoContainerAdapter.java:77)
        at hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:47)
        at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:45)
        at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:804)
        at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:776)
        at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.post2(MavenModuleSetBuild.java:1030)
        at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:725)
        at hudson.model.Run.execute(Run.java:1695)
        at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:519)
        at hudson.model.ResourceController.execute(ResourceController.java:88)
        at hudson.model.Executor.run(Executor.java:231)
    Caused by: java.io.IOException: Error writing request body to server
        at sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.checkError(Unknown Source)
        at sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.write(Unknown Source)
        at java.io.BufferedOutputStream.flushBuffer(Unknown Source)
        at java.io.BufferedOutputStream.write(Unknown Source)
        at org.codehaus.cargo.container.tomcat.internal.TomcatManager.pipe(TomcatManager.java:583)
        at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:501)
        at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deployImpl(TomcatManager.java:547)
        at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deploy(TomcatManager.java:273)
        at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deploy(TomcatManager.java:256)
        at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deploy(TomcatManager.java:240)
        at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.deploy(AbstractTomcatManagerDeployer.java:107)
        ... 17 more
    java.io.IOException: Error writing request body to server
        at sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.checkError(Unknown Source)
        at sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.write(Unknown Source)
        at java.io.BufferedOutputStream.flushBuffer(Unknown Source)
        at java.io.BufferedOutputStream.write(Unknown Source)
        at org.codehaus.cargo.container.tomcat.internal.TomcatManager.pipe(TomcatManager.java:583)
        at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:501)
        at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deployImpl(TomcatManager.java:547)
        at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deploy(TomcatManager.java:273)
        at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deploy(TomcatManager.java:256)
        at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deploy(TomcatManager.java:240)
        at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.deploy(AbstractTomcatManagerDeployer.java:107)
        at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:187)
        at hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:64)
        at hudson.plugins.deploy.CargoContainerAdapter$1.invoke(CargoContainerAdapter.java:90)
        at hudson.plugins.deploy.CargoContainerAdapter$1.invoke(CargoContainerAdapter.java:77)
        at hudson.FilePath.act(FilePath.java:914)
        at hudson.FilePath.act(FilePath.java:887)
        at hudson.plugins.deploy.CargoContainerAdapter.redeploy(CargoContainerAdapter.java:77)
        at hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:47)
        at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:45)
        at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:804)
        at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:776)
        at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.post2(MavenModuleSetBuild.java:1030)
        at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:725)
        at hudson.model.Run.execute(Run.java:1695)
        at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:519)
        at hudson.model.ResourceController.execute(ResourceController.java:88)
        at hudson.model.Executor.run(Executor.java:231)

预先感谢您的帮助。

最佳答案

在大多数情况下,此类错误仅仅是由于 URL 参数不正确造成的。

请参阅已记录/已解决的类似问题 here其中 URL 参数是罪魁祸首。此外,我强烈建议全面覆盖 Apache Manager Documentation .

但是,如上所述comment ,这也可能是由于应用程序本身与实际部署的版本不匹配造成的。

关于java - Jenkins Tomcat 部署错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23004035/

相关文章:

php - 使用 Hudson/Jenkins 部署 PHP 项目

java - 编辑基于矩阵的安全性后无法启动 Jenkins

java - JPA CriteriaBuilder 泛型错误 : CriteriaQuery<capture#2-of ? > 不适用于参数 (Expression<Long>)

java - Firebase,所有节点上的 .addSnapshotListener

mysql - XAMPP中配置tomcat出错

java - 部署 mybatis-truts 应用程序时出错

git - 从声明式 Jenkins 管道中的私有(private) Git 存储库下载单个文件

java - 并发调用Singleton类的方法

java - JVM 框架,哪一个?

tomcat - 在我的服务器上将端口 80 转发到 8080 是否可以阻止端口 8080 的用户访问我的网站?