Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Java binding for ZeroMQ
Java C++ CMake Shell
Latest commit 05a1368 @trevorbernard trevorbernard Merge pull request #392 from djelenc/curve_keygen
Support for CURVE key generation and encoding
Failed to load latest commit information.
builds/msvc Imported Visual Studio solution into Visual Studio 2012. Copied confi…
config added darwin subfolder to catch jni_md.h automatically
debian Prepare for release
src Support for CURVE key generation and encoding
.gitignore Travis now uses the latest libsodium and libzmq
.travis.yml Travis now uses the latest libsodium and libzmq
AUTHORS Add Trevor Bernard to contributors
CMakeLists.txt Fix CMake Error at CMakeLists.txt:204 (add_library): Cannot find sour…
COPYING Autotoolized version of jzmq
COPYING.LESSER Autotoolized version of jzmq
ChangeLog Fix broken build Update
Dockerfile Fix 'Invalid ENV format' error in Docker file Move perf and cpp into the structure
NEWS Autotoolized version of jzmq
README README: Added instructions
README-PERF Fixed compilation of performance classes and added scripts for execut… Add acknowledgements section Darwin fixes Remove code that patched libtool to remove rpath on Linux.
jzmq.spec rpm specfile: add missing zmq-perf.jar
maven.readme disabled auto-push on release - doing local checkout on release:perform
nativejar.xml Format nativejar.xml and pom.xml
pom.xml Update junit to 4.11

What is JZMQ?

This is the Java language binding for libzmq (aka ZeroMQ, 0MQ).

Build Status

The latest javadocs.

Building and Installing JZMQ

To build you need to have the libzmq library already installed, then you run:

make install

Avoiding JNI

JZMQ uses JNI to wrap libzmq for the best performance. If performance isn't your primary goal, look at the JeroMQ project, which is a pure Java implementation that provides an identical API to JZMQ, and uses the same protocol.

Building Packages

To build a Debian package, run:

$ dpkg-buildpackage -rfakeroot

To build an RPM package, run:

$ rpmbuild -tb jzmq-X.Y.Z.tar.gz

Where X.Y.Z is replaced with the version that you've downloaded.

If configure can't find your libzmq installation, you can tell it where to look, using e.g. --with-zeromq=/usr/local.

You may want to take a look at for additional hints.

For more information, refer to the ØMQ website at

On Mac OS X you may need to compile and make install pkg-config if configure fails with "syntax error near unexpected token newline".
See for details.

You may also need to symlink the header files of your standard Java installation (e.g. /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Headers/*.h) into a suitable directory (e.g. /usr/local/include) and point the JAVA_HOME environment variable to the parent directory (e.g./usr/local).


YourKit is kindly supporting ZeroMQ project with its full-featured Java Profiler.


Free use of this software is granted under the terms of the GNU Lesser General Public License (LGPL). For details see the files COPYING and COPYING.LESSER included with the Java binding for ØMQ.

Something went wrong with that request. Please try again.