問題タブ [bridj]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - ヘブライ語のユーザー名が原因で、bridj を使用して外部 dll をロードできません
ユーザー名がヘブライ語で書かれている Windows 7 で、BridJ を介してネイティブ ライブラリ ( lib.dll ) を Java アプリケーションにロードしようとしました。
重要なのは、Java アプリケーションがlib.dllをダウンロードし、適切な場所に保存することです。
私はそのファイルへの参照を持っています - >ファイルライブラリ、そしてlib.getCanonicalPath()
BridJに渡します。
最後に、次の例外が発生します。
それで、getCanonicalPath()
דני を に変換するようです。
どうすれば解決できますか?
java - JNAerator-typedefによって生成されたインターフェースを使用
typedef命令からJNAeratorによって生成されたインターフェイスを使用しようとしていますが、それを行う方法が見つかりません。
.hファイルの関数は次のとおりです。
ヘッダーファイルには、元のtypedef命令も含まれています。
JNAeratorは以下を生成します:
方法:
インターフェース:
そしてクラス:
LPCWSTR
問題は、Stringを使用Pointer
してオブジェクトをインスタンス化し、メソッドLPCWSTR
に渡すことができるようにする方法がわからないことInitialize
です。
これどうやってするの?
アップデート:
使用するように.hファイルを変更しましたwchar_t*
:
JNAeratorは、次のようなメソッドを生成しました。
だから私はそれをこのように呼んだ:
問題は、次の例外が発生することです。
この行で:
私は何が間違っているのですか?
java - Android で BridJ を使用中に UsatisfiedLinkError が発生する
現在、Android 用の BRIDj-0.6.1-android.jarを使用しています。問題は、ライブラリが次のように不満足なリンク エラーを表示することです。
Android プロジェクトのlib/armeabi/パスにlibcrypto.soファイルを保持しています。
これを解決するにはどうすればよいですか?
java - BridJ:メソッドのアドレスを取得できませんでした
BridJは共有ライブラリのメソッドを見つけることができません。理由を理解するのに助けが必要です。
ライブラリはJNAeratorによって生成されました。
mn -g
lib.soの:
ライブラリのヘッダー:
Javaコード:
ログでこのアプリケーションを実行する場合:
しかし、メソッドCreateClass
は正常に見つかりました。
何故ですか?
memory - JNAerator BridJ ランタイム静的メソッド インスタンス メモリ
そのため、最近 JNAerator を更新し、新しい BridJ ランタイムの使用を開始しました。問題をデバッグしようとしていますが、それがライブラリのコードなのか JNAerator 自体なのかわかりません。
基本的に、私の C ライブラリにはinit()
、他の C ライブラリ メソッド間で共有変数をメモリ内で初期化するメソッドがあります。新しい BridJ ランタイムと、ライブラリ用に生成された Java コードが静的メソッドのみを作成する新しい注釈があることに気付きました。これにより、C ライブラリがさまざまな静的 Java メソッドへのさまざまな呼び出し間でメモリ内の値を維持する際に問題が発生しますか?
java - 個人辞書を使用した Java の hunspell
Java から hunspell を使用するには、次の 2 つのオプションがあります。
- フンスペル JNA または
- フンスペル BridJ
どちらも問題なく動作しますが、hunspell の「個人辞書」機能を使用したいと思います (コマンド ラインから hunspell を呼び出す場合、-p パラメータ)。
このパラメーターまたは同じ機能で Hunspell JNA または BridJ を使用する方法はありますか?
android - Bridj は OpenCV に推奨されますか?
C++/OpenCV コードをまとめて Android に移行する方法を探しています。
これまでのところ、JNI、JNA、JNAerator、SWIG など、Bridj の方が理解しやすく、使いやすいことがわかりました。Bridj は Android 用の OpenCV ソース コードの適切なバインディングですか? Android 用の OpenCV/C++ のラッピングについて説明している適切なサンプルが見つかりませんでした。現時点では、Bridj を使用する必要があるかどうかわかりません。
どんな助けでも大歓迎です。
java - Java で Bridj を使用して、どのようにネイティブ関数を動的に呼び出すことができますか?
多くの場合、Clojure のユーザーはできるだけ怠惰になり、クラスやオブジェクトの作成を遅らせたいと考えています。同じ精神で、実行時に Java 内から解決されるネイティブ関数を呼び出したい場合は、 を使用com.sun.jna.Function.getFunction("foolibrary", "foofuncname")
できcom.sun.jna.Function
ますinvoked
。
Clojure では次のようになります。
一方、BridJ は魅力的なパフォーマンス上の利点を提供し、より単純な API を主張していますが、BridJ を使用してランタイム バインディング JNA の例と同様のことを行う方法はまだ明確ではありません。誰かが方法を示すことができますか? また、これが可能である場合、このアプローチでパフォーマンスが低下することはありますか? それ以外の場合は、事前に Java ソース ファイルを生成することが唯一の解決策のようです。誰かがこれを確認できれば幸いです。