簡體   English   中英

沒有C ++包裝器庫的Java本機調用

[英]Java Native Invocation without C++ wrapper lib

有沒有一種方法可以調用本機庫(Windows .dll,Linux .so)中的函數,而不必編寫處理JEnv和“ this”指針的C ++包裝器?

在這方面,我缺少與C#相似的功能,該功能可以輕松地與本機函數鏈接,而無需編寫橋庫,而讓編譯器編組細節。

謝謝,埃米利奧。

您可以使用Java Native Access JNA來做您想做的事情。

請注意,通常的包裝庫不是用C ++編寫的,而是用C語言編寫的。

我討厭不得不編寫JNI代碼並查看JNA,但它似乎沒有得到廣泛使用,並且可能會帶來潛在的性能問題。 請改用SWIG 一旦啟動並運行,就不需要花很長時間來編寫腳本並讓它為您生成JNI接口代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM