【问题标题】:Visual Basic or VBScript as Java Scripting Engine作为 Java 脚本引擎的 Visual Basic 或 VBScript
【发布时间】:2010-09-25 09:31:25
【问题描述】:

我考虑为 Visual Basic 或 VBScript 实现一个 ScriptingEngine à la JSR223(因为我不知道任何实现,除了 IBM 废弃的 BSF 引擎)。我知道这需要我进行一些本地编程,但我不知道从哪里开始。

一个想法是将windows脚本主机集成到java中,也许像一个活动控件一样使用它,但我找不到任何东西。是否有用于 Windows 脚本主机的公共 API?还有其他想法吗?

【问题讨论】:

    标签: java vbscript integration


    【解决方案1】:

    是的,可以将 Windows 脚本集成到 Java 中,但这并非易事。 Windows Script Interfaces 的文档可在 MSDN 上找到。您最感兴趣的接口是IActiveScriptIActiveScriptParseIActiveScriptSite

    通过 Google 搜索可以找到许多示例,但 Java 中的示例并不多。这些guys 有示例,但它使用他们的Java2Com 产品。虽然不是 Java 特定的,但 Dobbs 博士在 .NET 中实现这些接口时做了一个series of articles。我想您可能会发现这些信息很有用。

    还有一个随 VB6 一起提供的 ActiveX script control,它可以更轻松地向您的应用程序添加脚本。有一个示例 here 从 Java 中使用它,利用 JACOB Java 到 COM 桥。

    【讨论】:

    • +1 很好的研究,谢谢。我不知道 Neva Object 的人已经实现了这个,所以如果我真的需要这个,我会支付 239 美元的价格(我认为我无法更便宜地公开我的 Java 对象)。
    【解决方案2】:

    您本质上要求的是如何将 .NET 程序嵌入到 JVM 中。这是一项艰巨的任务,可能比您预期的要大得多。

    JavaScript JSR-233 引擎在 Sun Java 6 中默认可用,您可以在 https://scripting.dev.java.net/ 下载许多其他语言的适配器。留在 JVM 中时,您仍然可以拥有强大的功能。

    此外,BSF 似乎并未被遗弃,而是捐赠给了 Apache Jakarta。 http://jakarta.apache.org/bsf/。不过,我在页面上没有看到任何 VIsual Basic 支持。

    【讨论】:

    • 我不想要 Java 中的 .NET,只想要早于 .NET 的脚本支持!并且 ActiveScriptingEngine 不再在 BSF 中,因为它已被提供给 Apache,这是正确的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多