<!DOCTYPE html SYSTEM "about:legacy-compat">
<html lang="en"><head><META http-equiv="Content-Type" content="text/html; charset=iso-8859-15"><title>Apache JMeter
          -
          Mailing Lists</title><meta name="author" value="Apache JMeter Project"><meta name="email" value="dev.AT.jmeter.DOT.apache.DOT.org"><meta name="viewport" content="width=device-width, initial-scale=1"><link href="http://fonts.googleapis.com/css?family=Merriweather:400normal" rel="stylesheet" type="text/css"><link rel="stylesheet" type="text/css" href="./css/new-style.css"></head><body role="document"><a href="#content" class="hidden">Main content</a><div class="header"><!--
            APACHE LOGO
          --><div><a href="http://www.apache.org"><img title="Apache Software Foundation" width="290" height="75" src="./images/asf-logo.png" alt="Logo ASF"></a></div><!--
              PROJECT LOGO
            --><div><a href="http://jmeter.apache.org/"><img src="./images/logo.jpg" alt="Apache JMeter"></a></div><div class="twitter"><div><a href="https://twitter.com/share" class="twitter-share-button" data-text="Powerful Load Testing with Apache #JMeter" data-via="ApacheJMeter" data-lang="en-gb" data-size="large">Tweet</a><script>
            (function(d,s,id){
              var js,
                  fjs=d.getElementsByTagName(s)[0],
                  p=/^http:/.test(d.location)?'http':'https';
              if (!d.getElementById(id)) {
                  js=d.createElement(s);
                  js.id=id;
                  js.src=p+'://platform.twitter.com/widgets.js';
                  fjs.parentNode.insertBefore(js,fjs);
              }
            })(document, 'script', 'twitter-wjs');
              </script></div><div><a href="https://twitter.com/ApacheJMeter" class="twitter-follow-button" data-show-count="false" data-lang="en-gb" data-size="large">Follow</a><script>(function(d,s,id){
                var js,
                    fjs=d.getElementsByTagName(s)[0],
                    p=/^http:/.test(d.location)?'http':'https';
                if (!d.getElementById(id)) {
                    js=d.createElement(s);
                    js.id=id;
                    js.src=p+'://platform.twitter.com/widgets.js';
                    fjs.parentNode.insertBefore(js,fjs);
                }
            })(document, 'script', 'twitter-wjs');
              </script></div></div><div class="banner"><iframe src="http://www.apache.org/ads/bannerbar.html" style="border-width:0;" frameborder="0" scrolling="no"></iframe><div class="clear"></div></div></div><div class="nav"><ul class="menu"><li><div class="menu-title">About</div><ul><li><a href="./index.html">Overview</a></li><li><a href="http://twitter.com/ApacheJMeter">JMeter on Twitter<img src="./images/twitter.png" alt="Icon for JMeter on Twitter"></a></li><li><a href="./issues.html">Issue Tracking</a></li><li><a href="http://projects.apache.org/feeds/rss/jmeter.xml">Subscribe to What's New</a></li><li><a href="http://www.apache.org/licenses/">License</a></li></ul></li></ul><ul class="menu"><li><div class="menu-title">Download</div><ul><li><a href="./download_jmeter.cgi">Download Releases</a></li><li><a href="./nightly.html">Developer (Nightly) Builds</a></li></ul></li></ul><ul class="menu"><li><div class="menu-title">Documentation</div><ul><li><a href="./changes.html">Changes per version</a></li><li><a href="./usermanual/get-started.html">Get Started</a></li><li><a href="./usermanual/index.html">User Manual</a></li><li><a href="./usermanual/best-practices.html">Best Practices</a></li><li><a href="./usermanual/component_reference.html">Component Reference</a></li><li><a href="./usermanual/functions.html">Functions Reference</a></li><li><a href="./api/index.html">Javadocs</a></li><li><a href="./building.html">Building JMeter and Add-Ons</a></li><li><a href="http://wiki.apache.org/jmeter">JMeter Wiki</a></li><li><a href="http://wiki.apache.org/jmeter/JMeterFAQ">FAQ (Wiki)</a></li></ul></li></ul><ul class="menu"><li><div class="menu-title">Tutorials (PDF format)</div><ul><li><a href="./usermanual/jmeter_distributed_testing_step_by_step.pdf">Distributed Testing</a></li><li><a href="./usermanual/jmeter_proxy_step_by_step.pdf">Recording Tests</a></li><li><a href="./usermanual/junitsampler_tutorial.pdf">JUnit Sampler</a></li><li><a href="./usermanual/jmeter_accesslog_sampler_step_by_step.pdf">Access Log Sampler</a></li><li><a href="./extending/jmeter_tutorial.pdf">Extending JMeter</a></li></ul></li></ul><ul class="menu"><li><div class="menu-title">Community</div><ul><li><a href="http://wiki.apache.org/jmeter/JMeterCommitters">Contributors</a></li><li><a href="./mail.html">Mailing Lists</a></li><li><a href="./svnindex.html">SVN Repositories</a></li></ul></li></ul><ul class="menu"><li><div class="menu-title">Foundation</div><ul><li><a href="http://www.apache.org/">ASF</a></li><li><a href="http://www.apache.org/foundation/getinvolved.html">Get Involved in the ASF</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></ul></li></ul></div><div class="main" id="content"><div class="section"><h1>Mailing Lists - Guidelines</h1>
<p>
<strong>Before subscribing to any of the mailing lists, please make sure that you have
read and understand the <a href="mail.html">guidelines</a></strong>.
</p>

<p>
Please note that usage of these mailing lists is subject to the
<a href="http://www.apache.org/foundation/public-archives.html">Public Forum Archive Policy</a>.
</p>

<p>
For details of how to subscribe/unsubscribe please read
<a href="http://www.apache.org/foundation/mailinglists.html#subscribing">Subscribing and Unsubscribing</a>
</p>

</div><div class="section"><h1>JMeter lists and archives at the ASF</h1>
The following mailing lists are available:
<div class="subsection"><h2>Apache JMeter User<a class="sectionlink" href="#JMeterUser" title="Link to here">&para;</a></h2>
<p>
This is the list where users of Apache JMeter meet and discuss issues. 
</p>
<p>
Developers are also expected to be lurking on this list to offer support to users of JMeter.
</p>
<p>
This list starts part-way through Nov 2011, when JMeter became an independent Apache project.
For earlier postings, please see the Jakarta JMeter User list, below.
</p>
<ul>
<li>Subscribe at <a href="mailto:user-subscribe@jmeter.apache.org">user-subscribe@jmeter.apache.org</a></li>
<li>Unsubscibe at <a href="mailto:user-unsubscribe@jmeter.apache.org">user-unsubscribe@jmeter.apache.org</a></li>
<li>All old mails at <a href="http://mail-archives.apache.org/mod_mbox/jmeter-user/">jmeter-user Archive</a></li>
</ul>
</div>
<div class="subsection"><h2>Jakarta JMeter User<a class="sectionlink" href="#JakartaJMeterUser" title="Link to here">&para;</a></h2>
This is the old JMeter user list from when JMeter was a sub-project of Apache Jakarta.
<ul>
<li>All old mails at <a href="http://mail-archives.apache.org/mod_mbox/jakarta-jmeter-user/">jakarta-jmeter-user Archive</a></li></ul>
</div>
<div class="subsection"><h2>Apache JMeter Developer<a class="sectionlink" href="#JMeterDev" title="Link to here">&para;</a></h2>
<p>
This is the list where participating developers meet and discuss issues, code changes/additions etc.
</p>
<div class="clear"></div><div class="note">Please do not send usage questions to this list, see user list above.</div><div class="clear"></div>
<p>
This list also collects Wiki update messages.
</p>
<p>
This list starts part-way through Nov 2011, when JMeter became an independent Apache project.
For earlier postings, please see below.
</p>
<ul>
<li>Subscribe at <a href="mailto:dev-subscribe@jmeter.apache.org">dev-subscribe@jmeter.apache.org</a></li>
<li>Unsubscribe at <a href="mailto:dev-unsubscribe@jmeter.apache.org">dev-unsubscribe@jmeter.apache.org</a></li>
<li>All old mails at <a href="http://mail-archives.apache.org/mod_mbox/jmeter-dev/">jmeter-dev Archive</a></li>
</ul>
</div>
<div class="subsection"><h2>Apache JMeter Commits<a class="sectionlink" href="#JMeterCommits" title="Link to here">&para;</a></h2>
<p>
SVN commit messages are sent here.
</p>
Prior to Nov 2011, they were sent to the Jakarta Notifications list, see below. 
<ul>
<li>Subscribe at <a href="mailto:commits-subscribe@jmeter.apache.org">commits-subscribe@jmeter.apache.org</a></li>
<li>Subscribe at <a href="mailto:commits-unsubscribe@jmeter.apache.org">commits-unsubscribe@jmeter.apache.org</a></li>
<li>All old mails at <a href="http://mail-archives.apache.org/mod_mbox/jmeter-commits/">jmeter-commits Archive</a></li>
</ul>
</div>
<div class="subsection"><h2>Apache JMeter Issues<a class="sectionlink" href="#JMeterIssues" title="Link to here">&para;</a></h2>
<p>
Bugzilla messages are sent here.
</p>
<p>
Prior to Nov 2011, they were sent to the Jakarta Notifications list, see below.
</p> 
<ul>
<li>Subscribe at <a href="mailto:issues-subscribe@jmeter.apache.org">issues-subscribe@jmeter.apache.org</a></li>
<li>Unsubscribe at <a href="mailto:issues-unsubscribe@jmeter.apache.org">issues-unsubscribe@jmeter.apache.org</a></li>
<li>All old mails at <a href="http://mail-archives.apache.org/mod_mbox/jmeter-issues/">jmeter-issues Archive</a></li>
</ul>
</div>
<div class="subsection"><h2>Jakarta Developer<a class="sectionlink" href="#JakartaDev" title="Link to here">&para;</a></h2>
<p>Combined Jakarta developer list, April 2010 to November 2011</p>
<ul>
<li>All old mails at <a href="http://mail-archives.apache.org/mod_mbox/jakarta-dev/">jakarta-dev Archive</a></li>
</ul>
</div>
<div class="subsection"><h2>Jakarta JMeter Developer<a class="sectionlink" href="#JakartaJMeterDev" title="Link to here">&para;</a></h2>
Historical list, up to April 2010.
<ul>
<li>All old mails at <a href="http://mail-archives.apache.org/mod_mbox/jakarta-jmeter-dev/">jakarta-jmeter-dev Archive</a></li>
</ul>
</div>
<div class="subsection"><h2>Jakarta Notifications<a class="sectionlink" href="#JakartaNotif" title="Link to here">&para;</a></h2>
Combined Jakarta notifications to November 2011.
Includes Bugzilla, SVN and Wiki commit mails for JMeter.
<ul>
<li>All old mails at <a href="http://mail-archives.apache.org/mod_mbox/jakarta-notifications/">jakarta-notifications Archive</a></li>
</ul>
</div>
</div><div class="section"><h1>Other Archives and Searching</h1>
<p>
There are several 3rd party sites that archive and provide searching for our mailing lists:
</p>
<p>
<ul>
<li><a href="http://mail-archives.apache.org/mod_mbox/">mail-archives.apache.org</a></li>
<li><a href="http://jmeter.markmail.org/">Mark Mail</a> </li>
<li><a href="http://www.mail-archive.com/">mail-archive.com</a> </li>
<li><a href="http://marc.theaimsgroup.com/">marc.theaimsgroup.com</a></li>
</ul>
</p>
</div></div><div class="footer"><div class="copyright">
            Copyright &copy;
            1999 &ndash;
            2015
            , Apache Software Foundation
          </div><div class="trademarks">Apache, Apache JMeter, JMeter, the Apache
            feather, and the Apache JMeter logo are
            trademarks of the
            Apache Software Foundation.
          </div></div></body></html>