この lib (jzmq) は、ネイティブ ライブラリ libzmq にバインドされています。libzmq の機能 (ipc など) を使用しない場合は、Java の完全な実装であるjeromq ( mvnrepo、jeromq git ) を使用することをお勧めします。ほぼ同等の機能を備えています。
それ以外の場合は、jzmq が必要な場合は、適切にコンパイルする必要があります。これは、Windows x64でコンパイルした方法です:
ライブラリをビルドするには、IDE Visual Studio 2010 以降が必要です。この例では、2013 バージョンを使用しました。すべての作業はディレクトリで実行されますC:\zmq
(たとえば)。
- zeromq、jzmq、および libsodium-1.0.10 のソースを取得します。
- zeromq ディレクトリの内容全体を にコピーし
C:\zmq
ます。
- ディレクトリを作成します
C:\zmq\java
。
- jzmq ディレクトリの内容全体を にコピーし
C:\zmq\java
ます。
- ディレクトリ
C:\zmq\libsodium
を作成し、C:\zmq\libsodium
C:\zmq\libsodium\bi
nディレクトリlibsodium-1.0.10-msvc\Win32
に
コピーします。libsodium-1.0.10-msvc\x64
- ディレクトリを作成します
C:\zmq\libsodium\src
。
C:\zmq\libsodium\src directory
libsodium-1.0.10-msvc\include にコピーします。
ゼロムク。
ディレクトリから適切な zeromq ソリューション ファイルを Visual Studio で開きますC:\zmq\builds\msvc
。
構成マネージャーを開きます。アクティブな構成ソリューション - DynRelease を選択します。アクティブなソリューション プラットフォーム - x64 を選択します。
プロジェクトのプロパティ ページを開き、[構成プロパティ] - [C/C++] - [全般] に移動し、インクルード ファイル ディレクトリのパスを確認します。
次に、リンカー - 一般を選択し、ライブラリ ディレクトリのパスを確認します。
セクション内の構成ファイルのC:\zmq\builds\msvc\vs2013\libsodium.import.props
正しいパス。
すべてが正しければ、C:\zmq\bin\x64\Release\v120\dynamic
ディレクトリにdllを取得します。そうでない場合は、ログを確認し、変更を加えて再構築します。
Jzmq。
ディレクトリから適切な jzmq ソリューション ファイルを開きます。C:\zmq\java\builds\msvc\
同様に、zeromq プロジェクトで構成マネージャーを開き、リリースと x64 プラットフォームを選択します。
プロジェクトのプロパティ ページを開き、[構成プロパティ] - [VC ++ ディレクトリ] に移動して、JDK がインストールされたパスが正しいことを確認します。次のようなものが表示されます。
..\..\..\..\include;C:\Program Files\Java\jdk1.7.0_71\include;C:\Program
Files\Java\jdk1.7.0_71\include\win32;$(IncludePath)
また、ライブラリ カタログ (名前は忘れました) パスに、ビルドされた zeromq ライブラリを含むディレクトリへのパスが含まれていることを確認します。次のようになります。
..\..\..\..\bin\x64\Release\v120\dynamic;$(LibraryPath)
プロパティ ページで、[構成プロパティ] - [アセンブリ イベント] - [アセンブリ前のイベント] に移動し、[コマンド プロンプト] プロパティを確認します (まず、コピー コマンドでファイルへのパスを確認します)。次のようになります。
copy ..\config.hpp "..\..\..\src\main\c++\"
次に、jzmq をビルドします。すべてが正しければ、ファイルが に取得されますC:\zmq\java\lib
。
そうでない場合は、ログを確認し、変更を加えて再構築します。
C:\zmq
bin ディレクトリのみが必要な場合はjava\lib
、残りを削除できます。
PATH にパスを追加し、bin\x64\Release\v120\dynamic
Java アプリを実行します-Djava.library.path="path_to_java\lib"