2017-02-20 174 views
1

當我嘗試從使用AWSEB Deployment Plugin將Jenkins部署到AWS彈性beantalk時,出現以下錯誤。從Jenkins部署失敗文件到彈性beantalk時出現部署失敗

我在Root Object字段集中指定文件路徑,所以我在IncludesExcludes字段集中沒有值。

 
    AWSEB Deployment Plugin Version 0.3.15 
    FATAL: Deployment Failure 
    java.io.IOException: Deployment Failure 
     at br.com.ingenieux.jenkins.plugins.awsebdeployment.AWSEBDeploymentBuilder.perform(AWSEBDeploymentBuilder.java:188) 
     at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) 
     at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779) 
     at hudson.model.Build$BuildExecution.build(Build.java:205) 
     at hudson.model.Build$BuildExecution.doRun(Build.java:162) 
     at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:534) 
     at hudson.model.Run.execute(Run.java:1728) 
     at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) 
     at hudson.model.ResourceController.execute(ResourceController.java:98) 
     at hudson.model.Executor.run(Executor.java:404) 
    Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: Root Object doesn't exist 
     at java.util.concurrent.FutureTask.report(FutureTask.java:122) 
     at java.util.concurrent.FutureTask.get(FutureTask.java:192) 
     at hudson.remoting.LocalChannel$2.get(LocalChannel.java:77) 
     at br.com.ingenieux.jenkins.plugins.awsebdeployment.DeployerRunner.perform(DeployerRunner.java:66) 
     at br.com.ingenieux.jenkins.plugins.awsebdeployment.AWSEBDeploymentBuilder.perform(AWSEBDeploymentBuilder.java:184) 
     ... 9 more 
    Caused by: java.lang.IllegalArgumentException: Root Object doesn't exist 
     at org.apache.commons.lang.Validate.isTrue(Validate.java:136) 
     at br.com.ingenieux.jenkins.plugins.awsebdeployment.cmd.DeployerCommand$ValidateParameters.perform(DeployerCommand.java:124) 
     at br.com.ingenieux.jenkins.plugins.awsebdeployment.cmd.DeployerChain.perform(DeployerChain.java:54) 
     at br.com.ingenieux.jenkins.plugins.awsebdeployment.SlaveDeployerCallable.call(SlaveDeployerCallable.java:42) 
     at br.com.ingenieux.jenkins.plugins.awsebdeployment.SlaveDeployerCallable.call(SlaveDeployerCallable.java:27) 
     at hudson.remoting.LocalChannel$1.call(LocalChannel.java:52) 
     at jenkins.util.ContextResettingExecutorService$2.call(ContextResettingExecutorService.java:46) 
     at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

有關此錯誤的任何想法? Root Object doesn't exist

回答

0

Root obect字段希望您提供要部署到Beanstalk的文件或文件夾的路徑。

這裏重要的是路徑應該是相對於你的項目的根目錄。

考慮下面的例子:

  • 你有你的項目目錄「P」和該文件夾中你有2個子目錄一個& B.
  • 假設在你以前的生成步驟中,您已經瀏覽到一個子目錄,說A
  • 您要部署的文件存在於A/target/XYZ.war
  • 然後,根對象字段的條目將是「A/target/XYZ.war」(不含引號)

注意 - 即使你的當前工作目錄是A,但仍根對象路徑必須是相對於你的工作區(項目的根目錄)