6

dllをjarファイルに変換する方法を見つけようとしています。Java アプリケーションと通信する .net アプリケーションがあります。コア エンティティは、Java で手動で複製する必要がある .net オブジェクトです。IKVM について読んだことがありますが、jar から dll への変換のみが行われ、その逆ではないようです。

編集: dll から Java クラスを作成するツールがあれば、それも問題ありません。前もって感謝します

4

2 に答える 2

5

そんなツールありません。

dll は、ネイティブにコンパイルされたライブラリです。これは、マシンコードにコンパイルされたことを意味します。おそらく C/C++/C# コンパイラでコンパイルされています。

jar ファイルは、「Java 仮想マシン コード」にコンパイルされたファイルである「.class」ファイルを含む zip ファイルです。おそらく、java/clojure/scala コンパイラーによってコンパイルされています。

これらは 2 つの非常に異なる互換性のないものです。

このような変換を行うツールを作成することは不可能ではありませんが、あるマシン コードから別のマシン コードへの変換が必要であり、依存関係の解決、さまざまなタイプのコードなど、複数の問題を管理する必要があるため、非常に困難な作業になることは間違いありません。構造など

ただし、Javaコード内でDLLを使用したいので、これをやりたいと思っていると思います。それはある程度可能ですが、実際には非常に複雑です。JNI を使用する必要があります。

あなたがやりたいことを達成するのに役立つかもしれないので、この質問を見てください: Calling C++ dll from Java

于 2013-06-03T08:49:06.227 に答える
2

これは実際には簡単な作業です。.dll から .jar への変換は、コマンド ラインで com4j といくつかのコマンドを使用するのと同じくらい簡単です。

  1. com4j ダウンロード.
  2. コマンド ラインを開き、上記の手順で com4j ディレクトリに移動します。
  3. 以下のコマンドを実行します。

java -jar tlbimp.jar -o outputFolder -p nameOfPackage "pathToFile"

  1. 次に、結果を次のように jar します。

    jar cf desiredJarName.jar フォルダーYouWantJard

于 2015-08-05T19:32:26.693 に答える