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

// Start.bsh
import bsh.Interpreter;
Interpreter i = new Interpreter();
i.source("Target.bsh");




// 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]);
}

最佳答案

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");

09-28 03:51