ERROR: Could not send email as a part of the post-build publishers. hudson.util.IOException2: remote file operation failed: c:\hudson\workspace\Foo at hudson.remoting.Channel@d837603:192.168.1.107 at hudson.FilePath.act(FilePath.java:753) at hudson.FilePath.act(FilePath.java:739) at hudson.plugins.emailext.ExtendedEmailPublisher.getAttachments(ExtendedEmailPublisher.java:476) at hudson.plugins.emailext.ExtendedEmailPublisher.createMail(ExtendedEmailPublisher.java:305) at hudson.plugins.emailext.ExtendedEmailPublisher.sendMail(ExtendedEmailPublisher.java:249) at hudson.plugins.emailext.ExtendedEmailPublisher._perform(ExtendedEmailPublisher.java:241) at hudson.plugins.emailext.ExtendedEmailPublisher.perform(ExtendedEmailPublisher.java:203) at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:36) at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:644) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps(AbstractBuild.java:623) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps(AbstractBuild.java:601) at hudson.model.Build$RunnerImpl.cleanUp(Build.java:168) at hudson.model.Run.run(Run.java:1405) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:145) Caused by: java.io.IOException: Unable to serialize hudson.FilePath$FileCallableWrapper@6e0e60c4 at hudson.remoting.UserRequest.serialize(UserRequest.java:162) at hudson.remoting.UserRequest.<init>(UserRequest.java:62) at hudson.remoting.Channel.call(Channel.java:629) at hudson.FilePath.act(FilePath.java:746) ... 15 more Caused by: java.io.NotSerializableException: hudson.plugins.emailext.ExtendedEmailPublisher at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1164) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:330) at hudson.remoting.UserRequest._serialize(UserRequest.java:151) at hudson.remoting.UserRequest.serialize(UserRequest.java:160) ... 18 more
The issue is, your anonymous inner class that implements FileCallable
has an link to the instance of the outer class that it is defined in
(ExtendedEmailPublisger.this). One solution would be to make the
publisher Serializable, but then the entire publisher would be sent to
the remote machine and deserialized there.
A better solution would be to create a static inner class, or a top
level class that implements FileCallable, eg.
// static inner class
public static class AttachmentLister implements FileCallable {
}
Easier still would be:
FilePath[] attachments = baseDir.list(attachmentsPattern);
:-)
Bap.
Quoting Slide <slide...@gmail.com>:
> I am currently debugging something on some additions I made to the email-ext
> plugin. I realized after I pushed the code to my fork, that I hadn't tested
> a case where the files might be on another machine correctly. So, when I
> went to test, I am getting the following exception, which I don't quite
> understand as I am new to the Java world in many respects.
>
> ERROR: Could not send email as a part of the post-build
> publishers.hudson.util.IOException2
> <http://stacktrace.hudson-labs.org/search?query=hudson.util.IOException2>:
> remote file operation failed: c:\hudson\workspace\Foo at
> hudson.remoting.Channel@d837603:192.168.1.107
> at hudson.FilePath.act(FilePath.java:753)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.FilePath.act&entity=method>
> at hudson.FilePath.act(FilePath.java:739)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.FilePath.act&entity=method>
> at
> hudson.plugins.emailext.ExtendedEmailPublisher.getAttachments(ExtendedEmailPublisher.java:476)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.plugins.emailext.ExtendedEmailPublisher.getAttachments&entity=method>
> at
> hudson.plugins.emailext.ExtendedEmailPublisher.createMail(ExtendedEmailPublisher.java:305)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.plugins.emailext.ExtendedEmailPublisher.createMail&entity=method>
> at
> hudson.plugins.emailext.ExtendedEmailPublisher.sendMail(ExtendedEmailPublisher.java:249)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.plugins.emailext.ExtendedEmailPublisher.sendMail&entity=method>
> at
> hudson.plugins.emailext.ExtendedEmailPublisher._perform(ExtendedEmailPublisher.java:241)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.plugins.emailext.ExtendedEmailPublisher._perform&entity=method>
> at
> hudson.plugins.emailext.ExtendedEmailPublisher.perform(ExtendedEmailPublisher.java:203)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.plugins.emailext.ExtendedEmailPublisher.perform&entity=method>
> at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:36)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.tasks.BuildStepMonitor$3.perform&entity=method>
> at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:644)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.model.AbstractBuild$AbstractRunner.perform&entity=method>
> at
> hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps(AbstractBuild.java:623)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps&entity=method>
> at
> hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps(AbstractBuild.java:601)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps&entity=method>
> at hudson.model.Build$RunnerImpl.cleanUp(Build.java:168)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.model.Build$RunnerImpl.cleanUp&entity=method>
> at hudson.model.Run.run(Run.java:1405)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.model.Run.run&entity=method>
> at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.model.FreeStyleBuild.run&entity=method>
> at hudson.model.ResourceController.execute(ResourceController.java:88)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.model.ResourceController.execute&entity=method>
> at hudson.model.Executor.run(Executor.java:145)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.model.Executor.run&entity=method>
> Caused by: java.io.IOException
> <http://stacktrace.hudson-labs.org/search?query=java.io.IOException>:
> Unable to serialize hudson.FilePath$FileCallableWrapper@6e0e60c4
> at hudson.remoting.UserRequest.serialize(UserRequest.java:162)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.remoting.UserRequest.serialize&entity=method>
> at hudson.remoting.UserRequest.<init>(UserRequest.java:62)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.remoting.UserRequest.%3Cinit%3E&entity=method>
> at hudson.remoting.Channel.call(Channel.java:629)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.remoting.Channel.call&entity=method>
> at hudson.FilePath.act(FilePath.java:746)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.FilePath.act&entity=method>
> ... 15 more
> Caused by: java.io.NotSerializableException
> <http://stacktrace.hudson-labs.org/search?query=java.io.NotSerializableException>:
> hudson.plugins.emailext.ExtendedEmailPublisher
> at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1164)
> <http://stacktrace.hudson-labs.org/search/?query=java.io.ObjectOutputStream.writeObject0&entity=method>
> at
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518)
> <http://stacktrace.hudson-labs.org/search/?query=java.io.ObjectOutputStream.defaultWriteFields&entity=method>
> at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483)
> <http://stacktrace.hudson-labs.org/search/?query=java.io.ObjectOutputStream.writeSerialData&entity=method>
> at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400)
> <http://stacktrace.hudson-labs.org/search/?query=java.io.ObjectOutputStream.writeOrdinaryObject&entity=method>
> at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158)
> <http://stacktrace.hudson-labs.org/search/?query=java.io.ObjectOutputStream.writeObject0&entity=method>
> at
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518)
> <http://stacktrace.hudson-labs.org/search/?query=java.io.ObjectOutputStream.defaultWriteFields&entity=method>
> at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483)
> <http://stacktrace.hudson-labs.org/search/?query=java.io.ObjectOutputStream.writeSerialData&entity=method>
> at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400)
> <http://stacktrace.hudson-labs.org/search/?query=java.io.ObjectOutputStream.writeOrdinaryObject&entity=method>
> at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158)
> <http://stacktrace.hudson-labs.org/search/?query=java.io.ObjectOutputStream.writeObject0&entity=method>
> at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:330)
> <http://stacktrace.hudson-labs.org/search/?query=java.io.ObjectOutputStream.writeObject&entity=method>
> at hudson.remoting.UserRequest._serialize(UserRequest.java:151)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.remoting.UserRequest._serialize&entity=method>
> at hudson.remoting.UserRequest.serialize(UserRequest.java:160)
> <http://stacktrace.hudson-labs.org/search/?query=hudson.remoting.UserRequest.serialize&entity=method>
@old hooky
--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/bd7502bb-8376-45fd-86c4-87c6ebfb2747%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CALzHZS1Fuw7TbhNsEbLQmguGgVAsyJtQoZ%3DsP7VswRAgu1h%3D-Q%40mail.gmail.com.