有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

将Java项目编译为本机库,并在其顶部创建一个C/C++包装器

  1. 我正在做一个C/C++项目

  2. 我在网上找到了一些非常有价值的Java库形式的资产,我想将它们集成到我的C/C++项目中。这些是我不考虑移植到C/C++的大项目。p>

  3. >p>我在A^ {A1}帖子中看到java代码可以编译成本地代码,这样就可以运行java项目而不需要中间的java虚拟机。我还发现,甚至有一种商业工具可以用来做这件事,叫做ExcelsiorJET,这让我更加相信这是一件可靠的事情

采取1、2和;3考虑到,我想知道是否可以使用java库,将它编译成本地库,然后在该库的顶部创建C或C++包装器。这意味着这样就不再需要Java虚拟机了。这样,我将摆脱Java虚拟机层。这可能吗

我在网上搜索,看看是否有人成功地创建了这种管道,但没有得出结论

我想问的是,这条管道是否可能,至少在理论上,如果网上没有成功创建它的人的例子

如果可能的话,有人能给我指出正确的方向吗


共 (1) 个答案

  1. # 1 楼答案

    看看JNI和JVM启动序列:这都是C/C++在这个级别上的编码

    您可以提前编译java(AOT),也可以像调用库一样调用JVM(这就是Launch4j等可执行包装器的工作方式)

    简化Java/C/C++接口的一种方法是使用IDL。一旦定义了IDL接口,就可以使用它生成Java/C/C++代码