2014-10-07 121 views
3

我有一個名爲'SampleMavenDeploy1'的jenkins作業,它將上游項目('SampleMavenBuild1')中的工件(war文件,pom.xml)成功複製到此項目中。Jenkins tomcat7部署錯誤

我有以下配置項目:

生成步驟:

Copy artifacts from another project 
    Project Name:SampleMavenBuild1 

生成後的行動:

War/Ear files:MavenWebAppV14/target/*.war 

Context Path:webapps 

Containers: 
    Tomcat7.x 
     Manager username:tomcat 
     Manager Password:tomcat 
     Tomcat Url:http://localhost:8080/manager/text 

SampleMavenBuild1的構建(使Maven項目的war文件)成功。在此作業的工作區(SampleMavenDeploy1)中,存在war文件(MavenWebAppV14/target/MavenWebAppV14.war)。我還配置了tomcat-users.xml來添加用戶名'tomcat',密碼'tomcat'和角色'manager-gui'和'manager-script'。

我正面臨着jenkins構建工作中的錯誤。這項工作是爲通過CI服務器在tomcat7上部署war文件而設計的。我也'部署到安裝在詹金斯的tomcat'插件。

發起者用戶維卡斯

Building in workspace C:\Users\vikachou\.jenkins\jobs\SampleMavenDeploy1\workspace 
Copied 2 artifacts from "SampleMavenBuild1" build number 4 
Deploying C:\Users\vikachou\.jenkins\jobs\SampleMavenDeploy1\workspace\MavenWebAppV14\target\MavenWebAppV14.war to container Tomcat 7.x Remote 
ERROR: Publisher hudson.plugins.deploy.DeployPublisher aborted due to exception 
org.codehaus.cargo.container.ContainerException: Failed to redeploy [C:\Users\vikachou\.jenkins\jobs\SampleMavenDeploy1\workspace\MavenWebAppV14\target\MavenWebAppV14.war] 
    at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:189) 
    at hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:73) 
    at hudson.plugins.deploy.CargoContainerAdapter$1.invoke(CargoContainerAdapter.java:116) 
    at hudson.plugins.deploy.CargoContainerAdapter$1.invoke(CargoContainerAdapter.java:103) 
    at hudson.FilePath.act(FilePath.java:918) 
    at hudson.FilePath.act(FilePath.java:896) 
    at hudson.plugins.deploy.CargoContainerAdapter.redeploy(CargoContainerAdapter.java:103) 
    at hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:61) 
    at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:45) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:770) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:734) 
    at hudson.model.Build$BuildExecution.post2(Build.java:183) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:683) 
    at hudson.model.Run.execute(Run.java:1770) 
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) 
    at hudson.model.ResourceController.execute(ResourceController.java:89) 
    at hudson.model.Executor.run(Executor.java:240) 
Caused by: org.codehaus.cargo.container.tomcat.internal.TomcatManagerException: FAIL - Unknown command /manager/text/list 

    at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:566) 
    at org.codehaus.cargo.container.tomcat.internal.TomcatManager.list(TomcatManager.java:686) 
    at org.codehaus.cargo.container.tomcat.internal.TomcatManager.getStatus(TomcatManager.java:699) 
    at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:174) 
    ... 16 more 
org.codehaus.cargo.container.tomcat.internal.TomcatManagerException: FAIL - Unknown command /manager/text/list 

    at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:566) 
    at org.codehaus.cargo.container.tomcat.internal.TomcatManager.list(TomcatManager.java:686) 
    at org.codehaus.cargo.container.tomcat.internal.TomcatManager.getStatus(TomcatManager.java:699) 
    at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:174) 
    at hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:73) 
    at hudson.plugins.deploy.CargoContainerAdapter$1.invoke(CargoContainerAdapter.java:116) 
    at hudson.plugins.deploy.CargoContainerAdapter$1.invoke(CargoContainerAdapter.java:103) 
    at hudson.FilePath.act(FilePath.java:918) 
    at hudson.FilePath.act(FilePath.java:896) 
    at hudson.plugins.deploy.CargoContainerAdapter.redeploy(CargoContainerAdapter.java:103) 
    at hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:61) 
    at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:45) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:770) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:734) 
    at hudson.model.Build$BuildExecution.post2(Build.java:183) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:683) 
    at hudson.model.Run.execute(Run.java:1770) 
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) 
    at hudson.model.ResourceController.execute(ResourceController.java:89) 
    at hudson.model.Executor.run(Executor.java:240) 
Finished: FAILURE 

任何人誰可以找出最歡迎。 在此先感謝!

回答

2

您需要授予文本管理器權限才能部署。

只要進入到tomcat-users.xml中並添加此:

<user username="tomcat" password="password" roles="manager-script"/> 

或者只是給manager-script允許現有的tomcat-Manager用戶

+0

謝謝!它有幫助。 – VKumar 2015-06-26 11:44:53

+0

不客氣@VKumar,記得接受這個問題是否解決了你的問題:) – 2015-06-26 13:19:58

3

您需要的基本URL設置爲localhost: 8080 /在部署URL中,而不是經理網址localhost:8080/manager/text(這就是我的情況)。

0

我和你有同樣的問題。但是我讓tomcat用戶像這個問題的第一個答案一樣刷新,問題仍然存在於Jenkins上。

當我嘗試使用我的導航器連接到tomcat管理區時,tomcat沒有向我顯示該頁面,因爲tomcat-admin軟件包未安裝。所以,我已經安裝了tomcat7-admin包並重新啓動Tomcat的:

sudo apt-get install tomcat7-admin 
sudo service tomcat7 restart 

那麼問題是固定的。這是因爲詹金斯無法連接該計劃。太簡單!

-1

如果在tomcat上部署jenkins.war文件時顯示連接錯誤或加載失敗,請按照以下步驟操作。

  1. 粘貼tomcat/webapps中的jenkins文件夾。

  2. 重新啓動Tomcat(本地主機或IP:8080 /詹金斯)

  3. 詹金斯將加載和可能需要密碼。

  4. 爲了得到詹金斯的管理員密碼,然後運行 {cat /opt/tomcat/.jenkins/secrets/initialAdminPassword}

  5. 如果權限被拒絕訪問密碼,然後 sudo chmod 0777 /opt/tomcat/.jenkins/secrets/initialAdminPassword 否則運行ls -a在那裏你會看到.jenkins文件夾。