#mdStyle()

<a name="MailingLists-ApacheShiroMailingLists"></a>
#Apache Shiro Mailing Lists

| List Name            | List Address                                                | Subscribe                                              | Unsubscribe                                                | ASF Archive                                                            | Nabble (Online Forums)                                                   |
|----------------------|-------------------------------------------------------------|--------------------------------------------------------|------------------------------------------------------------|------------------------------------------------------------------------|--------------------------------------------------------------------------|
| Shiro User List      | [user@shiro.apache.org](mailto:user@shiro.apache.org)       | [Subscribe](mailto:user-subscribe@shiro.apache.org)    | [Unsubscribe](mailto:user-unsubscribe@shiro.apache.org)    | [ASF Archive](http://mail-archives.apache.org/mod_mbox/shiro-user/)    | [Nabble Forum and Archive](http://shiro-user.582556.n2.nabble.com/)      |
| Shiro Developer List | [dev@shiro.apache.org](mailto:dev@shiro.apache.org)         | [Subscribe](mailto:dev-subscribe@shiro.apache.org)     | [Unsubscribe](mailto:dev-unsubscribe@shiro.apache.org)     | [ASF Archive](http://mail-archives.apache.org/mod_mbox/shiro-dev/)     | [Nabble Forum and Archive](http://shiro-developer.582600.n2.nabble.com/) |
| Shiro Issues/JIRA List | [issues@shiro.apache.org](mailto:issues@shiro.apache.org) | [Subscribe](mailto:issues-subscribe@shiro.apache.org)  | [Unsubscribe](mailto:issues-unsubscribe@shiro.apache.org)  | [ASF Archive](http://mail-archives.apache.org/mod_mbox/shiro-issues/)  |                                                                          |
| Shiro SCM List       | [commits@shiro.apache.org](mailto:commits@shiro.apache.org) | [Subscribe](mailto:commits-subscribe@shiro.apache.org) | [Unsubscribe](mailto:commits-unsubscribe@shiro.apache.org) | [ASF Archive](http://mail-archives.apache.org/mod_mbox/shiro-commits/) |                                                                          |

<a name="MailingLists-DiscussionForums"></a>
###Discussion Forums

If you prefer you could use our discussion [Forums](forums.html "Forums") which are sync'd with the above mailing lists.
<input type="hidden" id="ghEditPage" value="mailing-lists.md"></input>
