我可以将参数传递给外部Beanshell脚本,该脚本来自另一个Beanshell脚本吗?

dja*_*fan 2 java scripting beanshell

我试图弄清楚如何将参数传递给我从初始脚本调用的第二个脚本.Beanshell文档没有提到这一点.有谁知道如何做到这一点?

// Start.bsh
import bsh.Interpreter;
Interpreter i = new Interpreter();
i.source("Target.bsh");
Run Code Online (Sandbox Code Playgroud)

.

// Target.bsh
System.out.println("No. of arguments are: " + args.length);
for(int i= 0;i < args.length;i++) {
  System.out.println("Argument " + i + " is : " + args[i]);
}
Run Code Online (Sandbox Code Playgroud)

Bar*_*ers 5

AFAIK,您无法通过命令行参数i.source("file.bsh").你需要做这样的事情:

Interpreter i = new Interpreter();
NameSpace ns = i.getNameSpace();
ns.setVariable("args", new String[]{"param1", "param2"}, false);
i.source("Target.bsh");
Run Code Online (Sandbox Code Playgroud)