在JAVA中获取javascript的所有变量

时间:2010-04-12 16:07:02

标签: java rhino

我正在为Java平台使用rhino和Scripting,以允许用户扩展我的应用程序。

然而,用户可以写一些案例,例如(ASTO.value>440) || (ASTO.bellowNormal)等...... 问题是在使用ScriptEngine从我的JAVA应用程序运行脚本之前 我想得到所有变量的名称!因为我应该知道脚本运行所需的变量... 我知道正则表达式会起作用,但我不确定...... 请我有人可以帮我弄清楚java正则表达式来获取我真正应用它的变量..

3 个答案:

答案 0 :(得分:0)

我找到了解决方案 cx.getDebuggableView(结果).getParamAndVarCount() 但它不会返回未声明的变量:(

答案 1 :(得分:0)

我们正在做一些非常相似的事情,尽管它是用Scala编写的,我只能给你一些提示......

  1. 测试非常重要
  2. 这是我们更复杂的测试之一:listArg[Math.floor(4 / listArg[zeroArg]['f3'])]
  3. 描述设计的变量......

    // chars after which there may be an environment variable used
    private val NewScopeChars = List('[', '(', '/', '*', '+', '-', ',')
    // chars that signal the end of a variable name
    private val SepChars = '.' :: ' ' :: ';' :: ']' :: ')' :: NewScopeChars
    private val ExcludeStrings = List("new", "Math")
    private val LiteralPrefixes = "'" :: "\"" :: (0 to 9).map(_.toString).toList
    
  4. 我有a problem with performance所以任何帮助都会受到赞赏。

答案 2 :(得分:0)