2016-06-02 14 views
0

私のJavaプログラムでは、.cppのクラスとメソッドを使いたいです。たとえば、method1を呼び出すp1.javaがあります。 method1は、p2.cppおよびp2.cppではp3.cppを含みます。私はcppコードを変更したくない...C++コードを変更せずにjavaからC++関数を呼び出す

それは可能ですか? (私は.cpp.headerの両方が必要です)

さらに良い方法がありますか? (Javaネイティブインタフェースを除く)?

method1_java_cpp_layer(JNIEnv * e, jobject o) 
{ 
    extracted_information = extract_information(e, o); 
    method1(extracted_information) 
} 

をそして、これは "java_cpp_layer.cpp" に入る: - あなたはJNIとJavaとC++の間の余分なレイヤを作成しないのはなぜ

答えて

2

が効果的にあなたが作成します。

+0

ありがとうございました。私はそれをしました。しかし、今私はプログラム(java java_cpp_layer)を実行すると別のエラーが発生します:libjava_cpp_layer.so:未定義のシンボル:p2 ...あなたは私を助けてくれますか? – faraa

関連する問題