■ はじめに
https://blogs.yahoo.co.jp/dk521123/36187289.htmlで、JNA(Java Native Access)を使って、JavaからC/C++コードを呼び出した。 しかし、JNR (Java Native Runtime)ってのもあるらしいので、簡単に調べてみた。
■ JNR (Java Native Runtime)とは?
* C/C++コードを、Javaから直接呼び出すことができるライブラリ
公式サイト
https://github.com/jnr/jnr-ffi■ JNAとの違い
https://stackoverflow.com/questions/44760972/what-is-the-difference-between-jna-and-jnrより ~~~~~~ JNA uses reflection to call native methods. # JNAはネイティブメソッドを呼ぶために、リフレクションを使う JNR generates bytecode in runtime only once therefore JNR works faster then JNA. # JNRは、ランタイムで一度、バイトコードを生成する、故にJNRはJNAより早く動作します ~~~~~~JNR VS JNA
https://java.libhunt.com/compare-jnr-ffi-vs-jna
だと、人気や安定性では、現状(2018/10/09現在)まだまだJNAの方に分がありそう。
参考文献
後で役に立ちそうなサイト
http://d.hatena.ne.jp/torutk/20150829/p1http://hito4-t.hatenablog.com/entry/2015/06/25/123933
http://mslabo.sakura.ne.jp/WordPress/make/%E5%93%80%E4%B8%81%E3%83%BB%E5%9B%9B%E6%96%B9%E5%B1%B1%E8%A9%B1/jnrjni%E7%B5%8C%E7%94%B1%E3%81%A7%E3%80%81windows%E3%81%AE%E3%83%8D%E3%82%A4%E3%83%86%E3%82%A3%E3%83%96dll%E3%81%8C%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%9B%E3%81%AA%E3%81%84/
関連記事
JNA (Java Native Access)
入門編https://blogs.yahoo.co.jp/dk521123/36187289.html
基本編
https://blogs.yahoo.co.jp/dk521123/37087661.html
あれこれ編
https://blogs.yahoo.co.jp/dk521123/37089190.html
JNI
Java から C++ のソースを呼び出すhttps://blogs.yahoo.co.jp/dk521123/33062191.html
C++ から Java のソースを呼び出す
https://blogs.yahoo.co.jp/dk521123/33067170.html