This issue is archived. You can view it, but you can't modify it. Learn more

ExportXMLWordPrintable

      I have the following methods:

      def executeCake(String target, String configuration, Boolean failOnError, String... arguments) {
          // Some fancy logic
      }
      def executeCake(String target, String configuration, String... arguments) {
          executeCake(target, configuration, true, arguments)
      }

      Now when running this in Jenkins, it fails to find the correct method and ends in the following exception:

      java.lang.IllegalStateException: cannot compare public java.lang.Object project.Utilities.executeCake(java.lang.String,java.lang.String,java.lang.Boolean,java.lang.String[]) to public java.lang.Object project.Utilities.executeCake(java.lang.String,java.lang.String,java.lang.String[])
       at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.GroovyCallSiteSelector.isMoreSpecific(GroovyCallSiteSelector.java:250)
       at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.GroovyCallSiteSelector.findMatchingMethod(GroovyCallSiteSelector.java:196)
       at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.GroovyCallSiteSelector.method(GroovyCallSiteSelector.java:146)
       at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onMethodCall(SandboxInterceptor.java:87)
       at org.kohsuke.groovy.sandbox.impl.Checker$1.call(Checker.java:153)
       at org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:157)
       at com.cloudbees.groovy.cps.sandbox.SandboxInvoker.methodCall(SandboxInvoker.java:17)
       at WorkflowScript.executeCake(WorkflowScript:164)
       at WorkflowScript.run(WorkflowScript:83)
      

      This is probably due to an incomplete implementation of choosing the most specific method: 

      https://github.com/jenkinsci/script-security-plugin/blob/5f3851062f4fd9431f4eb20c1e55748ef83c4ac8/src/main/java/org/jenkinsci/plugins/scriptsecurity/sandbox/groovy/GroovyCallSiteSelector.java#L241

            Assignee:
            Unassigned
            Reporter:
            Roman Bäriswyl
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Archived: