繁体   English   中英

从C ++生成JNI Bridge和Java接口

[英]Generate JNI Bridge and Java interfaces from C++

我知道可以使用javac在给定的Java实现下生成JNI,但是有没有办法做相反的事情(“ cjava ”)?

所以,如果我有这样的事情:

mypackage/mylib.h

void helloWorld();

mypackage/mylib.c

#include <iostream>

void helloWorld() {
    std::cout << "Hello World!" << std::endl;
}

是否应该像这样生成JNI

mylib-jni.c

#include "mypackage/mylib."

JNIEXPORT jlong JNICALL Java_mypackage_helloWorld() {
    helloWorld();
}

Mylib.java

package mypackage;

public class Mylib {    
    public native void helloWorld();    
}

等等

我不以某种方式绊脚石。

尝试antlr。 它具有C ++的语法文件,可让您完全控制。

对于Java的生成,您可以使用必须发布的cgV19。 我的照片是:

使用antlr解析C ++文件,并使用它为cgV19构建模型加载器。 cgV19使用此C ++解析器加载模型,为cgV19提供一个可从该模型生成Java文件的盒式磁带

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM