Groovy 沙盒阻止我格式化字符串

Groovy 沙盒阻止我格式化字符串,groovy,jenkins-workflow,Groovy,Jenkins Workflow,我有一个简单的groovy脚本: node ("master") { echo "I am about to try to use String.format" def jjj = String.format("bob") echo jjj } 如果我把这个脚本放在我的作业配置中并运行它,它运行得很好 但如果我将该脚本放入一个文件中,然后通过“来自SCM的工作流脚本”加载该文件,则会出现错误 org.jenkinsci.plugins.scriptsecurity.sandbox

我有一个简单的groovy脚本:

node ("master")
{
  echo "I am about to try to use String.format"
  def jjj = String.format("bob")
  echo jjj 
}
如果我把这个脚本放在我的作业配置中并运行它,它运行得很好

但如果我将该脚本放入一个文件中,然后通过“来自SCM的工作流脚本”加载该文件,则会出现错误

org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: unclassified staticMethod java.lang.String format java.lang.String
我如何解决这个问题?是否可以像关闭“工作流脚本”一样关闭“来自SCM的工作流脚本”的沙箱

或者groovy中是否有沙盒认可的格式化字符串的方法


为什么它首先阻止我格式化字符串?

我认为在使用SCM中的工作流脚本时不可能禁用沙箱

但是,您可以在此处批准使用:

http://<jenkins_host>:<port>/scriptApproval/
http://:/scriptApproval/
我如何解决这个问题

可能(未经测试)

而不是使用varargs。无论如何,您应该在JIRA中提交一个bug(组件
脚本安全插件
,标签
工作流
),并提供复制步骤

是否可以像关闭“工作流脚本”一样关闭“来自SCM的工作流脚本”的沙箱


否:

当您收到
未分类
错误时,无需批准任何内容。这意味着脚本安全插件中有一个bug。
String.format("bob", [])