2010-12-07 12 views
0

私はしばらくの間ツールを使用していましたが、私はそれがとても好きです。私はそれをEclipseプラグインとして持っていたいと思います。残念ながら、私はそれがC++で書かれていると思います。このようなコードベースをJavaで書き直さずにEclipseプラグインの基礎として使用できる方法はありますか?eclipseプラグインで非Javaコードを使用できますか?

BTW:このツールは他の誰かによって管理されており、GUIウィジェットとして使用する必要があります。私は主に、これを行うために所有者に話すことができるかどうか、ほとんど疑問に思っています。

答えて

1

あなたはいつもあなたが(ただし、主要なPITAであるか、無地JNI)SWIGを使用して、C++のコードのJavaラッパーを作成しようとすることができJNI

1

を使用することができます。

1

一般に、既存のネイティブアプリケーションとツールをEclipseに統合することが大きな努力です。メンテナーに話をしたいのであれば、なぜEclipseへの移植が良いのかを彼らに納得させる必要があります。

ただし、適切なC++ APIがあれば、自分で多くのことを行うことができます。 SWIGを使用してAPIをラップするか、シリアル化プロトコルの一部を使用して通信するラッパー実行可能ファイル(例:Google Protobuf)を記述できます。しかし、これはEclipseでのUIの統合を考慮しないので、ツールがUIに重い場合、これはおそらくあなたにはあまり役に立ちません。

+0

UIが重いのはごくわずかなことです。http://www.scootersoftware.com/ – BCS

+0

Eclipse内からどのような機能にアクセスしたいのですか?私が見ることから、Beyond Compareは多くのことを行いますが、その一部はEclipseに統合することなく、まったく同じように動作します。 – JesperE

1

ツールの種類によっては、いくつかのオプションが考えられます。コード生成ツールまたは翻訳ツールの場合は、ビルドプロセスの一環としてツールを呼び出すことができるカスタムビルダー以上のものが必要な場合があります。たとえば、Eclipseコンパイルの一部としてVisual Studioビルドを問題なく実行できます。

また、グラフィカルツールの場合は、COMオブジェクトであるかどうかを確認します。これはJavaに簡単にラップできるため、Eclipseプラグインに簡単にラップできます。

最後に、私はSWIGに投票したいと思います。このことは本当に良いことであり、CまたはC++ APIをJavaにラップして、大量のJNIコードを生成するのは非常に簡単です。

関連する問題