Могу ли я передать аргументы во внешний скрипт Beanshell, полученный из другого скрипта Beanshell? - PullRequest
2 голосов
/ 26 августа 2011

Я пытаюсь выяснить, как передать аргументы во второй скрипт, который я вызываю из исходного скрипта.Документация 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]);
}

1 Ответ

5 голосов
/ 26 августа 2011

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