<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.11.1 at 2022-11-18 
 | Rendered using Apache Maven Fluido Skin 1.5
-->
<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="Date-Revision-yyyymmdd" content="20221118" />
    <meta http-equiv="Content-Language" content="en" />
    <title>Apache Shiro :: Support :: EHCache &#x2013; Project Information</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.5.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />

      
    <script type="text/javascript" src="./js/apache-maven-fluido-1.5.min.js"></script>

                      </head>
        <body class="topBarDisabled">
          
        
    
        <div class="container-fluid">
          <div id="banner">
        <div class="pull-left">
                                    <a href="http://shiro.apache.org" id="bannerLeft">
                                                                                        <img src="http://shiro.apache.org/images/apache-shiro-logo.png"  alt="Shiro"/>
                </a>
                      </div>
        <div class="pull-right">              <div id="bannerRight">
                                                                                        <img src="http://shiro.apache.org/images/asf_logo.png" />
                </div>
      </div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
              
                              <li class="">
                    <a href="../../index.html" title="Apache Shiro :: Support :: EHCache">
        Apache Shiro :: Support :: EHCache</a>
                    <span class="divider">/</span>
      </li>
            <li class="">
                    <a href="../index.html" title="Apache Shiro :: Support">
        Apache Shiro :: Support</a>
                    <span class="divider">/</span>
      </li>
            <li class="">
                    <a href="index.html" title="Apache Shiro :: Support :: EHCache">
        Apache Shiro :: Support :: EHCache</a>
                    <span class="divider">/</span>
      </li>
        <li class="active ">Project Information</li>
        
              
                  <li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 2022-11-18</li>
              <li id="projectVersion" class="pull-right">
                    Version: 1.10.1
        </li>
            
                            </ul>
      </div>

            
      <div class="row-fluid">
        <div id="leftColumn" class="span2">
          <div class="well sidebar-nav">
              
                <ul class="nav nav-list">
                    <li class="nav-header">Parent Project</li>
                              
      <li>
  
                          <a href="../index.html" title="Apache Shiro :: Support">
          <span class="none"></span>
        Apache Shiro :: Support</a>
            </li>
                                        <li class="nav-header">Project Documentation</li>
                                                                                                                                                                                                                                                                                                                              
      <li class="active">
  
            <a href="#"><span class="icon-chevron-down"></span>Project Information</a>
                  <ul class="nav nav-list">
                    
      <li>
  
                          <a href="ci-management.html" title="CI Management">
          <span class="none"></span>
        CI Management</a>
            </li>
                    
      <li>
  
                          <a href="dependencies.html" title="Dependencies">
          <span class="none"></span>
        Dependencies</a>
            </li>
                    
      <li>
  
                          <a href="dependency-info.html" title="Dependency Information">
          <span class="none"></span>
        Dependency Information</a>
            </li>
                    
      <li>
  
                          <a href="dependency-management.html" title="Dependency Management">
          <span class="none"></span>
        Dependency Management</a>
            </li>
                    
      <li>
  
                          <a href="distribution-management.html" title="Distribution Management">
          <span class="none"></span>
        Distribution Management</a>
            </li>
                    
      <li>
  
                          <a href="index.html" title="About">
          <span class="none"></span>
        About</a>
            </li>
                    
      <li>
  
                          <a href="issue-management.html" title="Issue Management">
          <span class="none"></span>
        Issue Management</a>
            </li>
                    
      <li>
  
                          <a href="licenses.html" title="Licenses">
          <span class="none"></span>
        Licenses</a>
            </li>
                    
      <li>
  
                          <a href="mailing-lists.html" title="Mailing Lists">
          <span class="none"></span>
        Mailing Lists</a>
            </li>
                    
      <li>
  
                          <a href="plugin-management.html" title="Plugin Management">
          <span class="none"></span>
        Plugin Management</a>
            </li>
                    
      <li>
  
                          <a href="plugins.html" title="Plugins">
          <span class="none"></span>
        Plugins</a>
            </li>
                    
      <li>
  
                          <a href="scm.html" title="Source Code Management">
          <span class="none"></span>
        Source Code Management</a>
            </li>
                    
      <li>
  
                          <a href="summary.html" title="Summary">
          <span class="none"></span>
        Summary</a>
            </li>
                    
      <li>
  
                          <a href="team.html" title="Team">
          <span class="none"></span>
        Team</a>
            </li>
              </ul>
        </li>
                                                                                                                                                                                                
      <li>
  
                          <a href="project-reports.html" title="Project Reports">
          <span class="icon-chevron-right"></span>
        Project Reports</a>
                  </li>
            </ul>
              
                
          <hr />

           <div id="poweredBy">
                            <div class="clear"></div>
                            <div class="clear"></div>
                            <div class="clear"></div>
                            <div class="clear"></div>
                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
      </a>
                  </div>
          </div>
        </div>
        
                
        <div id="bodyColumn"  class="span10" >
                                  
            <section>
<h2><a name="Project_Information"></a>Project Information</h2>
<p>This document provides an overview of the various documents and links that are part of this project's general information. All of this content is automatically generated by <a class="externalLink" href="http://maven.apache.org">Maven</a> on behalf of the project.</p><section>
<h3><a name="Overview"></a>Overview</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Document</th>
<th>Description</th></tr>
<tr class="b">
<td align="left"><a href="ci-management.html">CI Management</a></td>
<td align="left">This document lists the continuous integration management system of this project for building and testing code on a frequent, regular basis.</td></tr>
<tr class="a">
<td align="left"><a href="dependencies.html">Dependencies</a></td>
<td align="left">This document lists the project's dependencies and provides information on each dependency.</td></tr>
<tr class="b">
<td align="left"><a href="dependency-info.html">Dependency Information</a></td>
<td align="left">This document describes how to include this project as a dependency using various dependency management tools.</td></tr>
<tr class="a">
<td align="left"><a href="dependency-management.html">Dependency Management</a></td>
<td align="left">This document lists the dependencies that are defined through dependencyManagement.</td></tr>
<tr class="b">
<td align="left"><a href="distribution-management.html">Distribution Management</a></td>
<td align="left">This document provides informations on the distribution management of this project.</td></tr>
<tr class="a">
<td align="left"><a href="index.html">About</a></td>
<td align="left">Apache Shiro is a powerful and flexible open-source security framework that cleanly handles
        authentication, authorization, enterprise session management, single sign-on and cryptography services.</td></tr>
<tr class="b">
<td align="left"><a href="issue-management.html">Issue Management</a></td>
<td align="left">This document provides information on the issue management system used in this project.</td></tr>
<tr class="a">
<td align="left"><a href="licenses.html">Licenses</a></td>
<td align="left">This document lists the project license(s).</td></tr>
<tr class="b">
<td align="left"><a href="mailing-lists.html">Mailing Lists</a></td>
<td align="left">This document provides subscription and archive information for this project's mailing lists.</td></tr>
<tr class="a">
<td align="left"><a href="plugin-management.html">Plugin Management</a></td>
<td align="left">This document lists the plugins that are defined through pluginManagement.</td></tr>
<tr class="b">
<td align="left"><a href="plugins.html">Plugins</a></td>
<td align="left">This document lists the build plugins and the report plugins used by this project.</td></tr>
<tr class="a">
<td align="left"><a href="scm.html">Source Code Management</a></td>
<td align="left">This document lists ways to access the online source repository.</td></tr>
<tr class="b">
<td align="left"><a href="summary.html">Summary</a></td>
<td align="left">This document lists other related information of this project</td></tr>
<tr class="a">
<td align="left"><a href="team.html">Team</a></td>
<td align="left">This document provides information on the members of this project. These are the individuals who have contributed to the project in one form or another.</td></tr></table></section></section>
                  </div>
            </div>
          </div>

    <hr/>

    <footer>
            <div class="container-fluid">
                      <div class="row-fluid">
                                      <p >Copyright &copy;                    2004&#x2013;2022
                        <a href="https://www.apache.org/">The Apache Software Foundation</a>.
            All rights reserved.    
      </p>
                </div>

        
                </div>
    </footer>
        </body>
</html>
