私はJNAインフラストラクチャーを初めて使っていますが、私はいくつかのライブラリー "someLib"を持っていると思うので、それに合わせてJavaインターフェースを作成します。それから、私はちょうどそれを正しく使うことができますか?カスタムライブラリーのJNA
しかし問題は、私がモックアウトする必要があることがわかりません。具体的には、私はその機能が必要ないくつかのクラスがあります。
私のC++ライブラリには、他のクラスを内部的に使用する「AdvancedString」オブジェクトがあります。
class B { ... };
class AdvancedString {
private:
B b;
public:
AdvancedString doSomething() { ... }
};
そして、私はAdvancedString.doSomething()を言って、Javaコードでできるようにする必要があり、それは仕事があります
意味、それはこのようになります。つまり、私は... AdvancedStringクラスのインターフェースを作成する必要がありますか?
public interface AdvancedStringInterface extends StdCallLibrary {
public AdvancedStringInterface doSomething();
}
これは妥当と思われますか?あるいは私は何かを逃している。あなたが与えることができる任意の洞察に感謝します!
JNAは一般的にC++インターフェイスをサポートしていません.Cのみをサポートしているため、JNAを使用するにはCラッパーインターフェイスが必要になる可能性があります。 (特に、関数はCラッパーインターフェースのstruct/classメンバーになれません)。 –