Skip to content


Subversion checkout URL

You can clone with
Download ZIP
MessagePack serializer implementation for Java /[Java]
Java Scala Shell

Merge pull request #276 from suzukaze/gradle

Update [skip ci]
latest commit a8f596dc02
@komamitsu komamitsu authored

MessagePack for Java

MessagePack is an efficient binary serialization format. It lets you exchange data among multiple languages like JSON. But it's faster and smaller. Small integers are encoded into a single byte, and typical short strings require only one extra byte in addition to the strings themselves.

MessagePack v7 (0.7.x) is a faster implementation of the previous version v06, and supports all of the message pack types, including extension format.


Quick Start

For Maven users:


For sbt users:

libraryDependencies += "org.msgpack" % "msgpack-core" % "0.7.0-M6"

For gradle users:

repositories {

dependencies {
    compile 'org.msgpack:msgpack-core:0.7.0-M6'

msgpack-java supports serialization and deserialization of Java objects through jackson-databind. For details, see msgpack-jackson/ The template-based serialization mechanism used in v06 is deprecated.

For MessagePack Developers Travis CI

msgpack-java uses sbt for building the projects. For the basic usage of sbt, see:

Coding style

Basic sbt commands

Enter the sbt console:

$ ./sbt

Here is a list of sbt commands for daily development:

> ~compile                                 # Compile source codes
> ~test:compile                            # Compile both source and test codes
> ~test                                    # Run tests upon source code change
> ~test-only *MessagePackTest              # Run tests in the specified class
> ~test-only *MessagePackTest -- -n prim   # Run the test tagged as "prim"
> project msgpack-core                     # Focus on a specific project
> package                                  # Create a jar file in the target folder of each project
> findbugs                                 # Produce findbugs report in target/findbugs
> jacoco:cover                             # Report the code coverage of tests to target/jacoco folder
> jcheckStyle                              # Run check style


> publishLocal            # Install to local .ivy2 repository
> publishM2               # Install to local .m2 Maven repository
> publishSigned           # Publish GPG signed artifacts to the Sonatype repository
> sonatypeRelease         # Publish to the Maven Central (It will be synched within less than 4 hours)

For publishing to Maven central, msgpack-java uses sbt-sonatype plugin. Set Sonatype account information (user name and password) in the global sbt settings. To protect your password, never include this file in your project.


credentials += Credentials("Sonatype Nexus Repository Manager",
        "(Sonatype user name)",
        "(Sonatype password)")

Project Structure

msgpack-core                 # Contains packer/unpacker implementation that never uses third-party libraries
msgpack-jackson              # Contains jackson-dataformat-java implementation
Something went wrong with that request. Please try again.