タグ

JNIに関するbabydaemonsのブックマーク (4)

  • JNIより簡単にJavaとC/C++をつなぐ「JNA」とは(1/4)-@IT

    インターネットの普及に加えて、リッチクライアント/RIAの発展とともに、アプリケーションの形態は、C/S(クライアント/サーバ)システムから、Webアプリケーションシステムにシフトしています。一般の情報発信システムだけではなく、企業の基幹情報システムまで、盛んにWebアプリケーションで構築するようになりました。 この変化の主役であるといわれる、Java技術は、Webアプリケーションシステムの発展とともに、ネットワークの親和性や、プラットフォーム適用の多様性で、広く受け入れられて、Webアプリケーションシステム開発の基盤技術になっています。 これまでのC/Sシステムでは、サーバロジックはC/C++で実装されるケースが一般的でした。C/SシステムからWebアプリケーションシステムにシフトする際に、Java技術を導入することを決めた場合、Java技術で、すべて新規開発するのは1つの選択肢ですが、

  • AndroidがC#に移植される | スラド Linux

    Xamarinは、AndroidJavaで書かれた部分をC#に移植した「XobotOS」をGitHubで公開した( Xamarinのブログ記事、 GitHub - XobotOS、 atsushieno氏のブログ記事、 家/. )。 XobotOSはJavaをC#に変換する「Sharpen」と呼ばれるツールを使用して移植された。ホストOSと統合する部分のコードと、Java JNIからCで書かれたネイティブコードを呼び出すコードを手作業で置き換えた以外は、Sharpenにより自動変換されている。XobotOSではAndroidがMono上で動作し、Dalvik VM上と比べて大幅にパフォーマンスが向上するという。また、C#と.NET VMはECMAで標準化されており、Javaのような特許問題が発生しない点もメリットといえる。

  • JNIコーディングメモ(Hishidama's Java native interface coding Memo)

    JNIのC言語/C++側のコーディング C言語とC++の違い コーディング例 JNI関数の概要 プリミティブ型・参照型(JavaオブジェクトのC/C++での扱い) String型 [/2006-11-09] 配列型 クラスの取得・インスタンス生成 [/2008-02-02] オブジェクトのメソッド呼び出し [/2008-02-07] オブジェクトのフィールド操作 ローカル参照の終了 [2006-11-09] 例外処理 [/2007-10-13] jni.hの中でC言語/C++で使える構造体 (クラス)が定義されているが、 コンパイラーがC言語の場合とC++の場合では定義のされ方が異なり、使い方も少し異なる。 JniJikken.c: JniJikken.cpp: #include "JniJikken.h" JNIEXPORT jbyteArray JNICALL Java_JniJikk

  • Java/JNI - PukiWiki

    cygwin-gcc † いろいろ方法はあるんだろうけど、一番簡単そうなdefファイルを作ってやる方法。 関数の数が多いと面倒だが。。 javahでヘッダーを作成したら、そのなかから関数の名前を取り出してきて 以下のようなファイル"hoge.def"を作成する。 EXPORTS Java_NativeFunctions_initialize_1IMPL Java_NativeFunctions_terminate_1IMPL という感じに、EXPORTSのあとに関数命を連ねる(戻り値とか引数は無視) で、ソースファイル"hoge.cpp"として、以下のようにコンパイル g++ -O3 -c hoge.cpp -o hoge.o -O2 -Wall -mrtd -g -mno-cygwin -I<jni.hのある場所> あとはリンク、ここがキモ。 以下のような感じでhoge.defを指定して

  • 1