<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.11.1 from org.apache.maven.plugins:maven-project-info-reports-plugin:3.5.0:mailing-lists at 2024-04-23

 | Rendered using Apache Maven Default Skin
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="generator" content="Apache Maven Doxia Site Renderer 1.11.1" />
    <title>shardingsphere-infra-exception-core &#x2013; Project Mailing Lists</title>
    <link rel="stylesheet" href="./css/maven-base.css" />
    <link rel="stylesheet" href="./css/maven-theme.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />
  </head>
  <body class="composite">
    <div id="banner">
<div id="bannerLeft">shardingsphere-infra-exception-core
</div>
      <div class="clear">
        <hr/>
      </div>
    </div>
    <div id="breadcrumbs">
      <div class="xleft">
        <span id="publishDate">Last Published: 2024-04-23</span>
           | <span id="projectVersion">Version: 5.4.2-SNAPSHOT</span>
      </div>
      <div class="xright"><a href="./" title="shardingsphere-infra-exception-core">shardingsphere-infra-exception-core</a>      </div>
      <div class="clear">
        <hr/>
      </div>
    </div>
    <div id="leftColumn">
      <div id="navcolumn">
       <h5>Parent Project</h5>
    <ul>
     <li class="none"><a href="../index.html" title="shardingsphere-infra-exception">shardingsphere-infra-exception</a></li>
    </ul>
       <h5>Project Documentation</h5>
    <ul>
     <li class="expanded"><a href="project-info.html" title="Project Information">Project Information</a>
      <ul>
       <li class="none"><a href="dependencies.html" title="Dependencies">Dependencies</a></li>
       <li class="none"><a href="dependency-info.html" title="Dependency Information">Dependency Information</a></li>
       <li class="none"><a href="dependency-management.html" title="Dependency Management">Dependency Management</a></li>
       <li class="none"><a href="distribution-management.html" title="Distribution Management">Distribution Management</a></li>
       <li class="none"><a href="index.html" title="About">About</a></li>
       <li class="none"><a href="licenses.html" title="Licenses">Licenses</a></li>
       <li class="none"><strong>Mailing Lists</strong></li>
       <li class="none"><a href="plugin-management.html" title="Plugin Management">Plugin Management</a></li>
       <li class="none"><a href="plugins.html" title="Plugins">Plugins</a></li>
       <li class="none"><a href="scm.html" title="Source Code Management">Source Code Management</a></li>
       <li class="none"><a href="summary.html" title="Summary">Summary</a></li>
      </ul></li>
     <li class="collapsed"><a href="project-reports.html" title="Project Reports">Project Reports</a></li>
    </ul>
      <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
        <img class="poweredBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
      </a>
      </div>
    </div>
    <div id="bodyColumn">
      <div id="contentBox">
<section>
<h2><a name="Project_Mailing_Lists"></a>Project Mailing Lists</h2><a name="Project_Mailing_Lists"></a>
<p>These are the mailing lists that have been established for this project. For each list, there is a subscribe, unsubscribe, and an archive link.</p>
<table border="0" class="bodyTable">
<tr class="a">
<th>Name</th>
<th>Subscribe</th>
<th>Unsubscribe</th>
<th>Post</th>
<th>Archive</th></tr>
<tr class="b">
<td align="left">ShardingSphere Developer List</td>
<td><a class="externalLink" href="mailto:dev-subscribe@shardingsphere.apache.org">Subscribe</a></td>
<td><a class="externalLink" href="mailto:dev-unsubscribe@shardingsphere.apache.org">Unsubscribe</a></td>
<td><a class="externalLink" href="mailto:dev@shardingsphere.apache.org">Post</a></td>
<td>-</td></tr></table></section>
      </div>
    </div>
    <div class="clear">
      <hr/>
    </div>
    <div id="footer">
      <div class="xright">
        Copyright &#169;      2024<a href="https://www.apache.org/">The Apache Software Foundation</a>.
.      </div>
      <div class="clear">
        <hr/>
      </div>
    </div>
  </body>
</html>
