<!DOCTYPE html>
<!--
 -
 - Licensed to the Apache Software Foundation (ASF) under one
 - or more contributor license agreements.  See the NOTICE file
 - distributed with this work for additional information
 - regarding copyright ownership.  The ASF licenses this file
 - to you under the Apache License, Version 2.0 (the
 - "License"); you may not use this file except in compliance
 - with the License.  You may obtain a copy of the License at
 -
 -   http://www.apache.org/licenses/LICENSE-2.0
 -
 - Unless required by applicable law or agreed to in writing,
 - software distributed under the License is distributed on an
 - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 - KIND, either express or implied.  See the License for the
 - specific language governing permissions and limitations
 - under the License.
 -
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
  <head>
    <title>Download - Apache Qpid&#8482;</title>
    <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
    <link rel="stylesheet" href="/site.css" type="text/css" async="async"/>
    <link rel="stylesheet" href="/deferred.css" type="text/css" defer="defer"/>
    <script type="text/javascript">var _deferredFunctions = [];</script>
    <script type="text/javascript" src="/deferred.js" defer="defer"></script>
    <!--[if lte IE 8]>
      <link rel="stylesheet" href="/ie.css" type="text/css"/>
      <script type="text/javascript" src="/html5shiv.js"></script>
    <![endif]-->

    <!-- Redirects for `go get` and godoc.org -->
    <meta name="go-import"
          content="qpid.apache.org git https://git-wip-us.apache.org/repos/asf/qpid-proton.git"/>
    <meta name="go-source"
          content="qpid.apache.org
https://github.com/apache/qpid-proton/blob/go1/README.md
https://github.com/apache/qpid-proton/tree/go1{/dir}
https://github.com/apache/qpid-proton/blob/go1{/dir}/{file}#L{line}"/>
  </head>
  <body>
    <div id="-content">
      <div id="-top" class="panel">
        <a id="-menu-link"><img width="16" height="16" src="" alt="Menu"/></a>

        <a id="-search-link"><img width="22" height="16" src="" alt="Search"/></a>

        <ul id="-global-navigation">
          <li><a id="-logotype" href="/index.html">Apache Qpid<sup>&#8482;</sup></a></li>
          <li><a href="/documentation.html">Documentation</a></li>
          <li><a href="/download.html">Download</a></li>
          <li><a href="/discussion.html">Discussion</a></li>
        </ul>
      </div>

      <div id="-menu" class="panel" style="display: none;">
        <div class="flex">
          <section>
            <h3>Project</h3>

            <ul>
              <li><a href="/overview.html">Overview</a></li>
              <li><a href="/components/index.html">Components</a></li>
              <li><a href="/releases/index.html">Releases</a></li>
            </ul>
          </section>

          <section>
            <h3>Messaging APIs</h3>

            <ul>
              <li><a href="/proton/index.html">Qpid Proton</a></li>
              <li><a href="/components/jms/index.html">Qpid JMS</a></li>
              <li><a href="/components/messaging-api/index.html">Qpid Messaging API</a></li>
            </ul>
          </section>

          <section>
            <h3>Servers and tools</h3>

            <ul>
              <li><a href="/components/broker-j/index.html">Broker-J</a></li>
              <li><a href="/components/cpp-broker/index.html">C++ broker</a></li>
              <li><a href="/components/dispatch-router/index.html">Dispatch router</a></li>
            </ul>
          </section>

          <section>
            <h3>Resources</h3>

            <ul>
              <li><a href="/dashboard.html">Dashboard</a></li>
              <li><a href="https://cwiki.apache.org/confluence/display/qpid/Index">Wiki</a></li>
              <li><a href="/resources.html">More resources</a></li>
            </ul>
          </section>
        </div>
      </div>

      <div id="-search" class="panel" style="display: none;">
        <form action="http://www.google.com/search" method="get">
          <input type="hidden" name="sitesearch" value="qpid.apache.org"/>
          <input type="text" name="q" maxlength="255" autofocus="autofocus" tabindex="1"/>
          <button type="submit">Search</button>
          <a href="/search.html">More ways to search</a>
        </form>
      </div>

      <div id="-middle" class="panel">
        <ul id="-path-navigation"><li><a href="/index.html">Home</a></li><li>Download</li></ul>

        <div id="-middle-content">
          <h1 id="download">Download</h1>

<p>The downloads on this page are from our <a href="/releases/index.html#current-releases">current releases</a>, produced as part of our community release process.
<em>In addition to the source artefacts below, Qpid is available via <a href="packages.html">packages</a> and <a href="maven.html">Maven</a>.</em></p>

<p>It is important to <a href="#verify-what-you-download">verify the integrity</a> of the files you download.</p>

<h2 id="messaging-apis">Messaging APIs</h2>

<table>
<thead>
<tr>
  <th>Content</th>
  <th>Version</th>
  <th>Download</th>
  <th>More</th>
</tr>
</thead>
<tbody>
<tr>
  <td><a href="/proton/index.html">Qpid Proton</a></td>
  <td>0.26.0</td>
  <td><a href="http://www.apache.org/dyn/closer.lua/qpid/proton/0.26.0/qpid-proton-0.26.0.tar.gz">Source</a> (<a href="https://www.apache.org/dist/qpid/proton/0.26.0/qpid-proton-0.26.0.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/proton/0.26.0/qpid-proton-0.26.0.tar.gz.sha512">SHA512</a>)</td>
  <td><a href="/releases/qpid-proton-0.26.0/index.html">Release Page</a></td>
</tr>
<tr>
  <td><a href="/proton/index.html">Qpid Proton-J</a></td>
  <td>0.30.0</td>
  <td><a href="http://www.apache.org/dyn/closer.lua/qpid/proton-j/0.30.0/apache-qpid-proton-j-0.30.0-src.tar.gz">Source</a> (<a href="https://www.apache.org/dist/qpid/proton-j/0.30.0/apache-qpid-proton-j-0.30.0-src.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/proton-j/0.30.0/apache-qpid-proton-j-0.30.0-src.tar.gz.sha512">SHA512</a>),  <a href="http://www.apache.org/dyn/closer.lua/qpid/proton-j/0.30.0/apache-qpid-proton-j-0.30.0-bin.tar.gz">Binary</a> (<a href="https://www.apache.org/dist/qpid/proton-j/0.30.0/apache-qpid-proton-j-0.30.0-bin.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/proton-j/0.30.0/apache-qpid-proton-j-0.30.0-bin.tar.gz.sha512">SHA512</a>)</td>
  <td><a href="/releases/qpid-proton-j-0.30.0/index.html">Release Page</a>, <a href="maven.html">Maven</a></td>
</tr>
<tr>
  <td><a href="/components/jms/index.html">Qpid JMS</a> (AMQP 1.0)</td>
  <td>0.38.0</td>
  <td><a href="http://www.apache.org/dyn/closer.lua/qpid/jms/0.38.0/apache-qpid-jms-0.38.0-src.tar.gz">Source</a> (<a href="https://www.apache.org/dist/qpid/jms/0.38.0/apache-qpid-jms-0.38.0-src.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/jms/0.38.0/apache-qpid-jms-0.38.0-src.tar.gz.sha512">SHA512</a>),  <a href="http://www.apache.org/dyn/closer.lua/qpid/jms/0.38.0/apache-qpid-jms-0.38.0-bin.tar.gz">Binary</a>  (<a href="https://www.apache.org/dist/qpid/jms/0.38.0/apache-qpid-jms-0.38.0-bin.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/jms/0.38.0/apache-qpid-jms-0.38.0-bin.tar.gz.sha512">SHA512</a>)</td>
  <td><a href="/releases/qpid-jms-0.38.0/index.html">Release Page</a>, <a href="maven.html">Maven</a></td>
</tr>
<tr>
  <td><a href="/components/jms/amqp-0-x.html">Qpid JMS AMQP 0-x</a></td>
  <td>6.3.3</td>
  <td><a href="http://www.apache.org/dyn/closer.lua/qpid/jms-amqp-0-x/6.3.3/apache-qpid-jms-amqp-0-x-6.3.3-src.tar.gz">Source</a> (<a href="https://www.apache.org/dist/qpid/jms-amqp-0-x/6.3.3/apache-qpid-jms-amqp-0-x-6.3.3-src.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/jms-amqp-0-x/6.3.3/apache-qpid-jms-amqp-0-x-6.3.3-src.tar.gz.sha512">SHA512</a>),  <a href="http://www.apache.org/dyn/closer.lua/qpid/jms-amqp-0-x/6.3.3/binaries/apache-qpid-jms-amqp-0-x-6.3.3-bin.tar.gz">Binary</a> (<a href="https://www.apache.org/dist/qpid/jms-amqp-0-x/6.3.3/binaries/apache-qpid-jms-amqp-0-x-6.3.3-bin.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/jms-amqp-0-x/6.3.3/binaries/apache-qpid-jms-amqp-0-x-6.3.3-bin.tar.gz.sha512">SHA512</a>)</td>
  <td><a href="/releases/qpid-jms-amqp-0-x-6.3.3/index.html">Release Page</a>, <a href="maven.html">Maven</a></td>
</tr>
<tr>
  <td><a href="/components/messaging-api/index.html">Qpid Messaging API</a> C++</td>
  <td>1.39.0</td>
  <td><a href="http://www.apache.org/dyn/closer.lua/qpid/cpp/1.39.0/qpid-cpp-1.39.0.tar.gz">Source</a>  (<a href="https://www.apache.org/dist/qpid/cpp/1.39.0/qpid-cpp-1.39.0.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/cpp/1.39.0/qpid-cpp-1.39.0.tar.gz.sha512">SHA512</a>)</td>
  <td><a href="/releases/qpid-cpp-1.39.0/index.html">Release Page</a></td>
</tr>
<tr>
  <td><a href="/components/messaging-api/index.html">Qpid Messaging API</a> Python</td>
  <td>1.37.0</td>
  <td><a href="http://www.apache.org/dyn/closer.lua/qpid/python/1.37.0/qpid-python-1.37.0.tar.gz">Source</a> (<a href="https://www.apache.org/dist/qpid/python/1.37.0/qpid-python-1.37.0.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/python/1.37.0/qpid-python-1.37.0.tar.gz.sha512">SHA512</a>)</td>
  <td><a href="/releases/qpid-python-1.37.0/index.html">Release Page</a></td>
</tr>
</tbody>
</table>

<h2 id="messaging-servers">Messaging servers</h2>

<table>
<thead>
<tr>
  <th>Content</th>
  <th>Version</th>
  <th>Download</th>
  <th>More</th>
</tr>
</thead>
<tbody>
<tr>
  <td><a href="/components/broker-j/index.html">Broker-J</a></td>
  <td>7.0.6</td>
  <td><a href="http://www.apache.org/dyn/closer.lua/qpid/broker-j/7.0.6/apache-qpid-broker-j-7.0.6-src.tar.gz">Source</a> (<a href="https://www.apache.org/dist/qpid/broker-j/7.0.6/apache-qpid-broker-j-7.0.6-src.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/broker-j/7.0.6/apache-qpid-broker-j-7.0.6-src.tar.gz.sha512">SHA512</a>),  <a href="http://www.apache.org/dyn/closer.lua/qpid/broker-j/7.0.6/binaries/apache-qpid-broker-j-7.0.6-bin.tar.gz">Binary</a> (<a href="https://www.apache.org/dist/qpid/broker-j/7.0.6/binaries/apache-qpid-broker-j-7.0.6-bin.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/broker-j/7.0.6/binaries/apache-qpid-broker-j-7.0.6-bin.tar.gz.sha512">SHA512</a>)</td>
  <td><a href="/releases/qpid-broker-j-7.0.6/index.html">Release Page</a></td>
</tr>
<tr>
  <td><a href="/components/cpp-broker/index.html">C++ broker</a></td>
  <td>1.39.0</td>
  <td><a href="http://www.apache.org/dyn/closer.lua/qpid/cpp/1.39.0/qpid-cpp-1.39.0.tar.gz">Source</a> (<a href="https://www.apache.org/dist/qpid/cpp/1.39.0/qpid-cpp-1.39.0.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/cpp/1.39.0/qpid-cpp-1.39.0.tar.gz.sha512">SHA512</a>)</td>
  <td><a href="/releases/qpid-cpp-1.39.0/index.html">Release Page</a></td>
</tr>
<tr>
  <td><a href="/components/dispatch-router/index.html">Dispatch router</a></td>
  <td>1.4.1</td>
  <td><a href="http://www.apache.org/dyn/closer.lua/qpid/dispatch/1.4.1/qpid-dispatch-1.4.1.tar.gz">Source</a> (<a href="https://www.apache.org/dist/qpid/dispatch/1.4.1/qpid-dispatch-1.4.1.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/dispatch/1.4.1/qpid-dispatch-1.4.1.tar.gz.sha512">SHA512</a>)</td>
  <td><a href="/releases/qpid-dispatch-1.4.1/index.html">Release Page</a></td>
</tr>
</tbody>
</table>

<h2 id="messaging-tools">Messaging tools</h2>

<table>
<thead>
<tr>
  <th>Content</th>
  <th>Version</th>
  <th>Download</th>
  <th>More</th>
</tr>
</thead>
<tbody>
<tr>
  <td><a href="/components/interop-test/index.html">Qpid Interop Test</a></td>
  <td>0.2.0</td>
  <td><a href="http://www.apache.org/dyn/closer.lua/qpid/interop-test/0.2.0/qpid-interop-test-0.2.0.tar.gz">Source</a> (<a href="https://www.apache.org/dist/qpid/interop-test/0.2.0/qpid-interop-test-0.2.0.tar.gz.asc">ASC</a>, <a href="https://www.apache.org/dist/qpid/interop-test/0.2.0/qpid-interop-test-0.2.0.tar.gz.sha512">SHA512</a>)</td>
  <td><a href="/releases/qpid-interop-test-0.2.0/index.html">Release Page</a></td>
</tr>
</tbody>
</table>

<h2 id="verify-what-you-download">Verify what you download</h2>

<p>It is essential that you verify the integrity of the downloaded files
using the ASC signatures or SHA checksums.</p>

<p>The signatures can be verified using PGP or GPG. First download
the <a href="https://www.apache.org/dist/qpid/KEYS"><code>KEYS</code></a> file as well as the
<code>.asc</code> signature file for the relevant artefact. Then verify the signatures
using one of the following sets of commands.</p>

<pre><code>% gpg --import KEYS
% gpg --verify &lt;artifact-name&gt;.asc &lt;artifact-name&gt;

% pgpk -a KEYS
% pgpv &lt;artifact-name&gt;.asc

% pgp -ka KEYS
% pgp &lt;artifact-name&gt;.asc
</code></pre>

<p>Alternatively, you can verify the SHA checksums of the
files. Unix programs called <code>sha1sum</code> and <code>sha512sum</code> (or <code>sha1</code> and
<code>sha512</code>) are included in many unix distributions.  They are also
available as part of
<a href="http://www.gnu.org/software/coreutils/">GNU Coreutils</a>. For
Windows users, <a href="http://www.slavasoft.com/fsum/">FSUM</a> supports this.
Ensure your generated checksum string matches the string
published in the checksum file included with each release artefact.</p>

<h2 id="more-information">More information</h2>

<ul>
<li><a href="/components/index.html">Components</a></li>
<li><a href="/releases/index.html">Releases</a></li>
<li><a href="packages.html">Packages</a></li>
<li><a href="maven.html">Qpid via Maven</a></li>
</ul>


          <hr/>

          <ul id="-apache-navigation">
            <li><a href="http://www.apache.org/">Apache</a></li>
            <li><a href="http://www.apache.org/licenses/">License</a></li>
            <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
            <li><a href="http://www.apache.org/foundation/thanks.html">Thanks!</a></li>
            <li><a href="/security.html">Security</a></li>
            <li><a href="http://www.apache.org/"><img id="-apache-feather" width="48" height="14" src="" alt="Apache"/></a></li>
          </ul>

          <p id="-legal">
            Apache Qpid, Messaging built on AMQP; Copyright &#169; 2015
            The Apache Software Foundation; Licensed under
            the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache
            License, Version 2.0</a>; Apache Qpid, Qpid, Qpid Proton,
            Proton, Apache, the Apache feather logo, and the Apache Qpid
            project logo are trademarks of The Apache Software
            Foundation; All other marks mentioned may be trademarks or
            registered trademarks of their respective owners
          </p>
        </div>
      </div>
    </div>
  </body>
</html>
