【问题标题】:Executing Java-compiled JavaScript file using Mozilla/Apache Rhino使用 Mozilla/Apache Rhino 执行 Java 编译的 JavaScript 文件
【发布时间】:2011-08-17 15:48:22
【问题描述】:

我遇到了一些问题,但不确定我做错了什么。我已经获取了最新的 Rhino 副本,但是 API 文档是 404ing,并且 Internet Archive 上提供的最新版本不完整!

我有一个包含许多函数的 JavaScript 文件。我已经将它编译成一个 .class 文件,并且可以在 Java 中访问它来执行 print() 等操作。

我不知道如何访问 JavaScript 函数的返回值,或者让脚本运行并返回一个值。

    CompiledClass instance = new CompiledClass();
    instance.main(arg);

... 工作正常,但 main 不会(也不能)返回值。如果我在 JavaScript 中有一个名为 say countApples() 的方法,它返回一个 int,我该如何访问它?

【问题讨论】:

    标签: java javascript rhino


    【解决方案1】:

    如果您使用的是最新版本的 Java,那么使用 JSR-223 引入的新 javax.scripting API 可能最容易。

    自 JDK 6 起,Rhino 引擎的一种修改形式现在包含在 Java 标准库中。

    这就是我一直使用 Java 中的 JavaScript 的方式,它对我来说很好用。

    【讨论】:

      【解决方案2】:

      使用javap找出方法名直接调用(不要通过main())。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-11-13
        • 2010-12-01
        • 1970-01-01
        • 2011-04-20
        • 2011-06-30
        • 1970-01-01
        • 2011-12-28
        相关资源
        最近更新 更多