1
我試圖運行從Jenkinsfile流水線作業(使用Groovy代碼),但我得到了下面的錯誤 -詹金斯管道java.io.NotSerializableException:groovy.util.slurpersupport.NodeChildren
java.io.NotSerializableException: groovy.util.slurpersupport.NodeChildren
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:860)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:778)
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:967)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
at org.jboss.marshalling.river.BlockMarshaller.doWriteObject(BlockMarshaller.java:65)
at org.jboss.marshalling.river.BlockMarshaller.writeObject(BlockMarshaller.java:56)
at org.jboss.marshalling.MarshallerObjectOutputStream.writeObjectOverride(MarshallerObjectOutputStream.java:50)
at org.jboss.marshalling.river.RiverObjectOutputStream.writeObjectOverride(RiverObjectOutputStream.java:179)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:344)
at java.util.HashMap.internalWriteEntries(HashMap.java:1777)
at java.util.HashMap.writeObject(HashMap.java:1354)
at sun.reflect.GeneratedMethodAccessor101.invoke(Unknown Source)
...
代碼我想執行的是 -
def getDataVersionFromNexus() {
def user = params.nexusUser
def password = params.nexusPassword
...
def oldVersion = -1
print output
if (!output.isEmpty()) {
def xmlContent = new XmlSlurper().parseText(output)
oldVersion = "${xmlContent.versioning.release}"
}
return oldVersion
}
我曾嘗試註釋方法@NonCPS
(如在一個相似的,所以建議後),但我沒有得到正確的輸出。
哪行代碼引起問題,從上面的問題中不清楚。 – Rao
從錯誤看起來像是使用XmlSlurper。堆棧跟蹤顯示在'sun.reflect.GeneratedMethodAccessor101.invoke(未知源)' – saikosen