मैं एक समारोह के अंदर के साथ एक कार्य बनाने के लिए कोशिश कर रहा हूँ:जेनकींस पाइपलाइन कॉन्फ़िगरेशन के अंदर फ़ंक्शन को परिभाषित और उपयोग कैसे करें?
def doCopyMibArtefactsHere(projectName) {
step ([
$class: 'CopyArtifact',
projectName: projectName,
filter: '**/**.mib',
fingerprintArtifacts: true,
flatten: true
]);
}
def BuildAndCopyMibsHere(projectName, params = [:]) {
build job: project, parameters: params
doCopyMibArtefactsHere(projectName)
}
node {
stage('Prepare Mib'){
BuildAndCopyMibsHere('project1')
}
}
लेकिन यह मुझे एक अपवाद gves: java.lang.NoSuchMethodError: ऐसा कोई डीएसएल विधि 'BuildAndCopyMibsHere' चरणों के बीच में पाया
क्या पाइपलाइन स्क्रिप्ट के भीतर एम्बेडेड फ़ंक्शंस का उपयोग करने का कोई तरीका है?
ठीक है। अब यह कहता है 'java.lang.UnsupportedOperationException: इंटरफ़ेस java.util.List' के कार्यान्वयन के साथ $ वर्ग निर्दिष्ट करना होगा। पीएस मूल कोड को सही किया गया - $ प्रतिस्थापित किया गया जहां तार तारों में नहीं हैं। –
अजीब, एक अलग समस्या की तरह लगता है, कॉपी आर्टेफैक्ट चरण को पुन: उत्पन्न करने के लिए स्निपेट जनरेटर का उपयोग करने का प्रयास करें। यदि यह अभी भी विफल रहता है, तो मैं एक नए प्रश्न पोस्ट करने का सुझाव दूंगा क्योंकि यह एक अलग मुद्दा है। –