我想從Java調用C++方法。我閱讀了關於JNI的知識,但是我沒有得到如何獲取所有庫文件以及在哪裏保存它以便從命令行運行程序。如何從Java調用C++?
是否有任何方法從Eclipse本身調用C++方法,因爲我正在使用它來運行Java類。
我想從Java調用C++方法。我閱讀了關於JNI的知識,但是我沒有得到如何獲取所有庫文件以及在哪裏保存它以便從命令行運行程序。如何從Java調用C++?
是否有任何方法從Eclipse本身調用C++方法,因爲我正在使用它來運行Java類。
雖然我以前使用JNI-C++橋接(雖然只有一點點) - 但它可能有點難看。您可能需要考慮使用SWIG來幫助您生成所有雜亂的鍋爐板代碼。
我已經使用JNA之前的簡單接口,它很簡單和優雅。儘管如此,如果存在複雜的界面,那麼最好使用SWIG。
有一些比較SWIG與JNI和JNA的好答案。這個問題雖然被問到了一段時間。
JNA可以用來代替JNI。
所有你需要的是下載JNA罐子(https://github.com/java-native-access/jna#download)應該包含在你的Java項目。
您需要在項目屬性中給出C++庫的位置。
訪問這個網站的例子,它也有一個Java和C++項目的源代碼,以瞭解它是如何工作的。 (http://blog.mwrobel.eu/how-to-call-dll-methods-from-java/#a_downloads)
看看這個線程 - http://stackoverflow.com/questions/7212982/jni-unable-to-fix-this-error/7213943#7213943 – adatapost
只是遵循任何JNI的教程,並得到開始 –
[如何使用NDK?從'hello world'app開始](http://stackoverflow.com/questions/4777935/how-to-use-ndk-starting-with-hello-world-app) –