-
Bug
-
Resolution: Fixed
-
Major
Using absolute path like
Project Name = /folder/job1
results in:
FATAL: com.cloudbees.hudson.plugins.folder.Folder cannot be cast to hudson.model.Job java.lang.ClassCastException: com.cloudbees.hudson.plugins.folder.Folder cannot be cast to hudson.model.Job at hudson.plugins.copyartifact.CopyArtifact$EnvAction.getProject(CopyArtifact.java:471) at hudson.plugins.copyartifact.CopyArtifact$EnvAction.add(CopyArtifact.java:450) at hudson.plugins.copyartifact.CopyArtifact$EnvAction.access$400(CopyArtifact.java:444) at hudson.plugins.copyartifact.CopyArtifact.perform(CopyArtifact.java:267) at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:802) at hudson.model.Build$BuildExecution.build(Build.java:199) at hudson.model.Build$BuildExecution.doRun(Build.java:160) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:584) at hudson.model.Run.execute(Run.java:1575) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:237)
First of all, (Job) Jenkins.getInstance().getItemByFullName(part) should be Jenkins.getInstance().getItemByFullName(part, Job.class). But then the code is apparently wrong anyway: from an initial ctx of some random folder, the first part is folder, so ctx.getItem(part) is null, and then getItemByFullName(part) should be that folder. Perhaps what you meant was to pass in the original projectName.