【发布时间】:2014-01-21 06:51:48
【问题描述】:
我正在尝试使用 NPAPI 和 firebreath 框架开发 HTML5 插件。需要使用的代码是用java编写的,但我需要将其转换为C++。我知道的唯一方法是通过 JNI,我需要将每个 .java 文件转换为 .cpp 文件。但是,我的项目中有 200 多个文件。有没有更好的方法来实现这一目标?
【问题讨论】:
标签: java c++ plugins firebreath
我正在尝试使用 NPAPI 和 firebreath 框架开发 HTML5 插件。需要使用的代码是用java编写的,但我需要将其转换为C++。我知道的唯一方法是通过 JNI,我需要将每个 .java 文件转换为 .cpp 文件。但是,我的项目中有 200 多个文件。有没有更好的方法来实现这一目标?
【问题讨论】:
标签: java c++ plugins firebreath
任何“简单”的方式都更像是一个 c++ 问题,而不是插件或 firebreath 问题。我的猜测是,如果您主要在 java 中需要它,那么将它制作成一个小程序而不是一个插件会好得多。据我所知,没有任何事情可以让您轻松地直接使用 FireBreath 或 NPAPI 做您想做的事情。
【讨论】:
JNI 不会将 Java 转换为 C++,它是一种从 Java 代码调用本机代码(例如 C 或 C++)的技术。它似乎与您的问题无关:您(手动或自动)将所有 Java 转换为 C++(然后您可以从 Firebreath 调用),或者您将代码保留在 Java 中并运行一个小程序(没有 C/C++涉及的代码。) 如果@taxilian 建议的小程序不是一个好的选择,为什么不把你的 Java 项目变成一个应用程序,让你的 Firebreath 插件启动它并与之通信呢?您的插件甚至可以下载并安装 Java 应用程序,例如在临时文件夹中。一个限制:Java 代码不能直接访问内部浏览器 API,Firebreath 插件必须代表 Java 应用程序进行任何此类调用。这一切的难易程度主要取决于网页和 Java 代码之间所需通信的复杂性和带宽。
【讨论】: