TOP 投稿 過去ログ 管理用 RSS RDF

JavaでDLLを実行する方法⇒JNI/JNA/SWIG

URL:http://bit.ly/2nTVXde
C/C++で作成されたDLLをJavaで実行するなら、JNA(Java Native Access)を使うのが簡単だと思います。


JNI(Java Native Interface) - ウィキペディア
JavaからDLLを使う,呼び出す(JNI,Windows)
JNI を使用して Java からネイティブ (DLL) コードを呼び出す方法 - support.microsoft.com
■連載:サーバサイドJava初心者のためのWebシステム入門第7回 J2EEと外部システムを連携する方法 - @IT


Java Native Access - ウィキペディア
Java Native Access (JNA) - github
Getting Started with JNA
Default Type Mappings
Using Pointers and Arrays
Using Structures And Unions
Using ByReference Arguments
import com.sun.jna.*;

JNIより簡単にJavaとC/C++をつなぐ「JNA」とは - @IT
Windowsで作成したDLLをJavaより呼び出して使用する
Windows64bitでJNAでJavaからC++コード呼び出そうとしてハマった話
java - Invalid memory access - Stack Overflow
泥臭くJNAにチャレンジ - DO☆KA☆TA ~information technology~
JavaからC言語で書かれた処理を呼ぶ。(JNA)

「JNA簡単だよー」って言うけど、サンプルの様に引数が単純なDLLを呼ぶ場合の話。ちょっと複雑な構造体を与える場合はどうやってマッピングするのか嵌っちゃいます。
JNAではまる。Javaからepollを使いたい。 - StoryEdit 開発日誌
JNAではまる、その2。__attribute__((__packed__))のマッピングをする。 - StoryEdit 開発日誌
JNAではまる。その3。 jna3からjna4、Direct mappingへ移行する。 - StoryEdit 開発日誌


SWIG - ウィキペディア
Javaの他、スクリプト言語(perl、PHP、Pythonなど)に接続するためのオープンソースなツール。C/C++ と対象の言語とを橋渡しするグルーコードを生成する。
JavaからCの処理を呼ぶ方法(JNI/JNA/SWIG)

コメント

Name: Mail: Pickup:
MSG: