繁体   English   中英

Jenkins声明性管道的不可序列化错误

[英]Not serializable error for jenkins declarative pipeline

我试图从我的管道中触发我的电子邮件推广工作,该管道从Jenkins消息中提取回购名称。 但是无法解决此块的SerializableException错误。 任何帮助是极大的赞赏。

post{
        success{
            script{
                @NonCPS
                //upstream_job_name = null
                def manager = manager.getLogMatcher('.*Obtained Jenkinsfile from git (.*)$')
                if(manager.matches()){
                    def gitMsg=manager.group(1)
                    gitrepo = "${gitMsg}"
                    echo gitrepo
                    def upstream_job_name = gitrepo.split("/")[4].replace(".git", "")
                    println upstream_job_name

                }
                build job: 'job-approval' , parameters: [[$class: 'StringParameterValue', name: 'upstream_job_name', value: upstream_job_name]]


            }
        }
    }

以下是我收到的错误消息:

[管道] //脚本执行成功发布条件时出错:

java.io.NotSerializableException:org.jboss.marshalling.river.BlockMarshaller.doWriteObject(BlockMars65)上的org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:926) )在org.jboss.marshalling.Marshalling.river.BlockMarshaller.java:56在org.jboss.marshalling.MarshallerObjectOutputStream.writeObjectOverride(MarshallerObjectOutputStream.java:50)在org.jboss.marshalling。 RiverObjectOutputStream.java:179)

使用后,您需要立即释放manager 更多细节可以在这篇文章中找到

script{

    //upstream_job_name = null
    def manager = manager.getLogMatcher('.*Obtained Jenkinsfile from git (.*)$')
    if(manager.matches()){
        def gitMsg=manager.group(1)
        gitrepo = "${gitMsg}"
        echo gitrepo
        def upstream_job_name = gitrepo.split("/")[4].replace(".git", "")
        println upstream_job_name      
    }
    manager = null

    build job: 'job-approval' , 
        parameters: [
            [$class: 'StringParameterValue', name: 'upstream_job_name', value: upstream_job_name]
        ]
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM