আমি জাভা প্রকল্পগুলি সংকলনের জন্য জেনকিনস 2 ব্যবহার করছি, আমি একটি pom.xML থেকে সংস্করণটি পড়তে চাই, আমি এই উদাহরণটি অনুসরণ করছিলাম:
https://github.com/jenkinsci/pipeline-plugin/blob/master/TUTORIAL.md
উদাহরণটি পরামর্শ দেয়:
দেখে মনে হচ্ছে ফাইল সিস্টেম অ্যাক্সেস করতে কিছু সুরক্ষা সমস্যা রয়েছে তবে আমি কী বুঝতে পারি না এটি কী সমস্যা দিচ্ছে (বা কেন):
আমি উদাহরণের চেয়ে কিছুটা আলাদা করছি:
def version() {
String path = pwd();
def matcher = readFile("${path}/pom.xml") =~ '<version>(.+)</version>'
return matcher ? matcher[0][1] : null
}
'সংস্করণ' পদ্ধতি চালানোর সময় আমি যে ত্রুটিটি পাচ্ছি:
org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: Scripts not permitted to use method groovy.lang.GroovyObject invokeMethod java.lang.String java.lang.Object (org.codehaus.groovy.runtime.GStringImpl call org.codehaus.groovy.runtime.GStringImpl)
at org.jenkinsci.plugins.scriptsecurity.sandbox.whitelists.StaticWhitelist.rejectMethod(StaticWhitelist.java:165)
at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onMethodCall(SandboxInterceptor.java:117)
at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onMethodCall(SandboxInterceptor.java:103)
at org.kohsuke.groovy.sandbox.impl.Checker$1.call(Checker.java:149)
at org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:146)
at com.cloudbees.groovy.cps.sandbox.SandboxInvoker.methodCall(SandboxInvoker.java:15)
at WorkflowScript.run(WorkflowScript:71)
at ___cps.transform___(Native Method)
at com.cloudbees.groovy.cps.impl.ContinuationGroup.methodCall(ContinuationGroup.java:55)
at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.dispatchOrArg(FunctionCallBlock.java:106)
at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.fixArg(FunctionCallBlock.java:79)
at sun.reflect.GeneratedMethodAccessor408.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.dispatchOrArg(FunctionCallBlock.java:100)
at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.fixArg(FunctionCallBlock.java:79)
at sun.reflect.GeneratedMethodAccessor408.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
at com.cloudbees.groovy.cps.impl.ContinuationGroup.methodCall(ContinuationGroup.java:57)
at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.dispatchOrArg(FunctionCallBlock.java:106)
at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.fixArg(FunctionCallBlock.java:79)
at sun.reflect.GeneratedMethodAccessor408.invoke(Unknown Source)
আমি এই সংস্করণগুলি ব্যবহার করছি: প্লাগইন পাইপলাইন 2.1 জেনকিনস ২.২
Scripts not permitted to use method
, তবে এটি ঘটেছিল কারণ আমিscm 'checkout'
পরিবর্তে লিখেছিলামcheckou scm
। যদি কেউ এর মধ্যে পড়ে তবে খারাপ সিনট্যাক্সের জন্য দেখুন :)। মার্টেন কিয়েফ্ট বলেছিলেন এমনভাবে করা আমাকে খারাপ আদেশ সম্পর্কে আরও স্পষ্ট ত্রুটি বার্তাটি দেখার অনুমতি দিয়েছে :)