diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/ConcurrentRemovalLoadTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/ConcurrentRemovalLoadTest.java
index 5ff05c0..a5f421a 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/ConcurrentRemovalLoadTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/ConcurrentRemovalLoadTest.java
@@ -1,6 +1,6 @@
 package org.apache.commons.jcs3;
 
-import org.apache.commons.jcs3.JCS;
+
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSCacheElementRetrievalUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSCacheElementRetrievalUnitTest.java
index 75f1c5c..07c08b5 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSCacheElementRetrievalUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSCacheElementRetrievalUnitTest.java
@@ -1,6 +1,5 @@
 package org.apache.commons.jcs3;
 
-import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSConcurrentCacheAccessUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSConcurrentCacheAccessUnitTest.java
index 0777f0c..20d5ca8 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSConcurrentCacheAccessUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSConcurrentCacheAccessUnitTest.java
@@ -23,7 +23,6 @@
 import java.util.concurrent.CopyOnWriteArrayList;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.GroupCacheAccess;
 import org.apache.commons.jcs3.access.exception.CacheException;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSLightLoadUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSLightLoadUnitTest.java
index be5a06c..025c0cb 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSLightLoadUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSLightLoadUnitTest.java
@@ -19,7 +19,6 @@
  * under the License.
  */
 
-import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
 
 import junit.framework.TestCase;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSRemovalSimpleConcurrentTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSRemovalSimpleConcurrentTest.java
index eab03e6..ed88018 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSRemovalSimpleConcurrentTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSRemovalSimpleConcurrentTest.java
@@ -1,6 +1,5 @@
 package org.apache.commons.jcs3;
 
-import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSThrashTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSThrashTest.java
index 7a7988c..d82b174 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSThrashTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSThrashTest.java
@@ -23,7 +23,6 @@
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
 import org.apache.commons.jcs3.engine.stats.behavior.IStatElement;
 import org.apache.commons.jcs3.engine.stats.behavior.IStats;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSUnitTest.java
index b7af360..c1cbdee 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSUnitTest.java
@@ -23,7 +23,6 @@
 import java.util.LinkedList;
 import java.util.Random;
 
-import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
 
 import junit.framework.TestCase;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSvsHashtablePerformanceTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSvsHashtablePerformanceTest.java
index ef207d2..3ab72fe 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSvsHashtablePerformanceTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/JCSvsHashtablePerformanceTest.java
@@ -21,7 +21,6 @@
 
 import java.util.Hashtable;
 
-import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
 import org.apache.commons.jcs3.engine.memory.lru.LRUMemoryCache;
 import org.apache.commons.jcs3.log.Log;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/RemovalTestUtil.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/RemovalTestUtil.java
index 1d363e3..d1b1c1b 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/RemovalTestUtil.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/RemovalTestUtil.java
@@ -1,6 +1,5 @@
 package org.apache.commons.jcs3;
 
-import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/TestTCPLateralCache.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/TestTCPLateralCache.java
index 2418ab4..8ac0edd 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/TestTCPLateralCache.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/TestTCPLateralCache.java
@@ -1,6 +1,5 @@
 package org.apache.commons.jcs3;
 
-import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/ZeroSizeCacheUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/ZeroSizeCacheUnitTest.java
index a277d57..3ddbfda 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/ZeroSizeCacheUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/ZeroSizeCacheUnitTest.java
@@ -1,6 +1,5 @@
 package org.apache.commons.jcs3;
 
-import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/CacheAccessUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/CacheAccessUnitTest.java
index ba8dbf2..cd967fb 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/CacheAccessUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/CacheAccessUnitTest.java
@@ -24,7 +24,6 @@
 import java.util.Set;
 
 import org.apache.commons.jcs3.JCS;
-import org.apache.commons.jcs3.access.CacheAccess;
 import org.apache.commons.jcs3.access.exception.CacheException;
 import org.apache.commons.jcs3.access.exception.ObjectExistsException;
 import org.apache.commons.jcs3.engine.CompositeCacheAttributes;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/GroupCacheAccessUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/GroupCacheAccessUnitTest.java
index c690b76..f40624d 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/GroupCacheAccessUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/GroupCacheAccessUnitTest.java
@@ -22,7 +22,6 @@
 import java.util.Set;
 
 import org.apache.commons.jcs3.JCS;
-import org.apache.commons.jcs3.access.GroupCacheAccess;
 import org.apache.commons.jcs3.access.exception.CacheException;
 
 import junit.framework.TestCase;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/SystemPropertyUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/SystemPropertyUnitTest.java
index f5878b6..2c9a107 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/SystemPropertyUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/SystemPropertyUnitTest.java
@@ -22,7 +22,6 @@
 import junit.framework.TestCase;
 
 import org.apache.commons.jcs3.JCS;
-import org.apache.commons.jcs3.access.CacheAccess;
 import org.apache.commons.jcs3.engine.control.CompositeCacheManager;
 import org.junit.FixMethodOrder;
 import org.junit.runners.MethodSorters;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/TestCacheAccess.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/TestCacheAccess.java
index c08f64a..ad6d128 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/TestCacheAccess.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/access/TestCacheAccess.java
@@ -29,8 +29,6 @@
 
 import org.apache.commons.jcs3.engine.control.event.ElementEventHandlerMockImpl;
 import org.apache.commons.jcs3.JCS;
-import org.apache.commons.jcs3.access.CacheAccess;
-import org.apache.commons.jcs3.access.GroupCacheAccess;
 import org.apache.commons.jcs3.access.exception.CacheException;
 import org.apache.commons.jcs3.engine.ElementAttributes;
 import org.apache.commons.jcs3.engine.behavior.IElementAttributes;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/admin/AdminBeanUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/admin/AdminBeanUnitTest.java
index ef7a0bb..9e88fc5 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/admin/AdminBeanUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/admin/AdminBeanUnitTest.java
@@ -23,9 +23,7 @@
 
 import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
-import org.apache.commons.jcs3.admin.CacheElementInfo;
-import org.apache.commons.jcs3.admin.CacheRegionInfo;
-import org.apache.commons.jcs3.admin.JCSAdminBean;
+
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/admin/CountingStreamUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/admin/CountingStreamUnitTest.java
index ddd4722..8e9c32b 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/admin/CountingStreamUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/admin/CountingStreamUnitTest.java
@@ -1,6 +1,6 @@
 package org.apache.commons.jcs3.admin;
 
-import org.apache.commons.jcs3.admin.CountingOnlyOutputStream;
+
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/AuxiliaryCacheConfiguratorUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/AuxiliaryCacheConfiguratorUnitTest.java
index cd0dee0..411a586 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/AuxiliaryCacheConfiguratorUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/AuxiliaryCacheConfiguratorUnitTest.java
@@ -23,7 +23,6 @@
 
 import org.apache.commons.jcs3.engine.control.MockElementSerializer;
 import org.apache.commons.jcs3.engine.logging.MockCacheEventLogger;
-import org.apache.commons.jcs3.auxiliary.AuxiliaryCacheConfigurator;
 import org.apache.commons.jcs3.engine.behavior.IElementSerializer;
 import org.apache.commons.jcs3.utils.serialization.StandardSerializer;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/MockAuxiliaryCache.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/MockAuxiliaryCache.java
index 73faea3..9e18e7c 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/MockAuxiliaryCache.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/MockAuxiliaryCache.java
@@ -25,7 +25,6 @@
 import java.util.Set;
 
 import org.apache.commons.jcs3.auxiliary.AbstractAuxiliaryCache;
-import org.apache.commons.jcs3.auxiliary.AuxiliaryCacheAttributes;
 import org.apache.commons.jcs3.engine.CacheStatus;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 import org.apache.commons.jcs3.engine.stats.behavior.IStats;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/MockAuxiliaryCacheFactory.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/MockAuxiliaryCacheFactory.java
index dc79ffb..98ad210 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/MockAuxiliaryCacheFactory.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/MockAuxiliaryCacheFactory.java
@@ -20,8 +20,6 @@
  */
 
 import org.apache.commons.jcs3.auxiliary.AbstractAuxiliaryCacheFactory;
-import org.apache.commons.jcs3.auxiliary.AuxiliaryCache;
-import org.apache.commons.jcs3.auxiliary.AuxiliaryCacheAttributes;
 import org.apache.commons.jcs3.engine.behavior.ICompositeCacheManager;
 import org.apache.commons.jcs3.engine.behavior.IElementSerializer;
 import org.apache.commons.jcs3.engine.logging.behavior.ICacheEventLogger;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/PurgatoryElementUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/PurgatoryElementUnitTest.java
index adb3b8f..a4309e1 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/PurgatoryElementUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/PurgatoryElementUnitTest.java
@@ -1,6 +1,5 @@
 package org.apache.commons.jcs3.auxiliary.disk;
 
-import org.apache.commons.jcs3.auxiliary.disk.PurgatoryElement;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.ElementAttributes;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheCountUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheCountUnitTest.java
index df8f109..850e4f8 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheCountUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheCountUnitTest.java
@@ -20,7 +20,6 @@
  */
 
 import org.apache.commons.jcs3.auxiliary.disk.behavior.IDiskCacheAttributes.DiskLimitType;
-import org.apache.commons.jcs3.auxiliary.disk.block.BlockDiskCacheAttributes;
 
 public class BlockDiskCacheCountUnitTest extends BlockDiskCacheUnitTestAbstract
 {
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheKeyStoreUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheKeyStoreUnitTest.java
index 8c190df..c8ab35a 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheKeyStoreUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheKeyStoreUnitTest.java
@@ -1,9 +1,7 @@
 package org.apache.commons.jcs3.auxiliary.disk.block;
 
 import org.apache.commons.jcs3.auxiliary.disk.behavior.IDiskCacheAttributes.DiskLimitType;
-import org.apache.commons.jcs3.auxiliary.disk.block.BlockDiskCache;
-import org.apache.commons.jcs3.auxiliary.disk.block.BlockDiskCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.disk.block.BlockDiskKeyStore;
+
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheSizeUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheSizeUnitTest.java
index 04f3fe7..28821fe 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheSizeUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheSizeUnitTest.java
@@ -20,7 +20,6 @@
  */
 
 import org.apache.commons.jcs3.auxiliary.disk.behavior.IDiskCacheAttributes.DiskLimitType;
-import org.apache.commons.jcs3.auxiliary.disk.block.BlockDiskCacheAttributes;
 
 public class BlockDiskCacheSizeUnitTest extends BlockDiskCacheUnitTestAbstract
 {
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheUnitTestAbstract.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheUnitTestAbstract.java
index 4c07f6c..d0fe76a 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheUnitTestAbstract.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskCacheUnitTestAbstract.java
@@ -25,8 +25,6 @@
 import java.nio.charset.StandardCharsets;
 import java.util.Map;
 
-import org.apache.commons.jcs3.auxiliary.disk.block.BlockDisk;
-import org.apache.commons.jcs3.auxiliary.disk.block.BlockDiskCache;
 import org.apache.commons.jcs3.auxiliary.disk.block.BlockDiskCacheAttributes;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.ElementAttributes;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskUnitTest.java
index a09bdb0..1b9edfa 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/block/BlockDiskUnitTest.java
@@ -4,7 +4,6 @@
 import java.io.IOException;
 import java.util.Random;
 
-import org.apache.commons.jcs3.auxiliary.disk.block.BlockDisk;
 import org.apache.commons.jcs3.utils.serialization.StandardSerializer;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/DiskTestObjectUtil.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/DiskTestObjectUtil.java
index 779ba3c..9389b86 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/DiskTestObjectUtil.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/DiskTestObjectUtil.java
@@ -23,7 +23,6 @@
 import java.util.Random;
 
 import org.apache.commons.jcs3.auxiliary.disk.DiskTestObject;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDisk;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 import org.apache.commons.jcs3.utils.serialization.StandardSerializer;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexDiskCacheCountUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexDiskCacheCountUnitTest.java
index aec3d75..d207f4c 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexDiskCacheCountUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexDiskCacheCountUnitTest.java
@@ -22,8 +22,6 @@
 import java.io.IOException;
 
 import org.apache.commons.jcs3.auxiliary.disk.behavior.IDiskCacheAttributes.DiskLimitType;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskCache;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskCacheAttributes;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexDiskCacheSizeUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexDiskCacheSizeUnitTest.java
index 4fafde9..4619cd5 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexDiskCacheSizeUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexDiskCacheSizeUnitTest.java
@@ -23,8 +23,6 @@
 
 import org.apache.commons.jcs3.auxiliary.disk.DiskTestObject;
 import org.apache.commons.jcs3.auxiliary.disk.behavior.IDiskCacheAttributes.DiskLimitType;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskCache;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskCacheAttributes;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexDiskCacheUnitTestAbstract.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexDiskCacheUnitTestAbstract.java
index 52975b0..d83bf91 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexDiskCacheUnitTestAbstract.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexDiskCacheUnitTestAbstract.java
@@ -28,10 +28,7 @@
 import org.apache.commons.jcs3.auxiliary.MockCacheEventLogger;
 import org.apache.commons.jcs3.auxiliary.disk.DiskTestObject;
 import org.apache.commons.jcs3.utils.timing.SleepUtil;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDisk;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskCache;
 import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskElementDescriptor;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.ElementAttributes;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexedDiskCacheKeyStoreUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexedDiskCacheKeyStoreUnitTest.java
index 04677ba..7abaab5 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexedDiskCacheKeyStoreUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexedDiskCacheKeyStoreUnitTest.java
@@ -1,7 +1,5 @@
 package org.apache.commons.jcs3.auxiliary.disk.indexed;
 
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskCache;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskCacheAttributes;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.ElementAttributes;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexedDiskCacheOptimizationUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexedDiskCacheOptimizationUnitTest.java
index 5971ef8..2e07116 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexedDiskCacheOptimizationUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexedDiskCacheOptimizationUnitTest.java
@@ -2,8 +2,6 @@
 
 import org.apache.commons.jcs3.auxiliary.disk.DiskTestObject;
 import org.apache.commons.jcs3.utils.timing.SleepUtil;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskCache;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskCacheAttributes;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/LRUMapSizeVsCount.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/LRUMapSizeVsCount.java
index 3bbf6d3..3a742a6 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/LRUMapSizeVsCount.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/indexed/LRUMapSizeVsCount.java
@@ -21,10 +21,6 @@
 
 import java.util.Map;
 
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskCache;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.disk.indexed.IndexedDiskElementDescriptor;
-
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCDataSourceFactoryUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCDataSourceFactoryUnitTest.java
index bbec16b..37d6280 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCDataSourceFactoryUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCDataSourceFactoryUnitTest.java
@@ -32,8 +32,6 @@
 
 import org.apache.commons.dbcp2.BasicDataSource;
 import org.apache.commons.dbcp2.datasources.SharedPoolDataSource;
-import org.apache.commons.jcs3.auxiliary.disk.jdbc.JDBCDiskCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.disk.jdbc.JDBCDiskCacheFactory;
 import org.apache.commons.jcs3.auxiliary.disk.jdbc.dsfactory.DataSourceFactory;
 import org.apache.commons.jcs3.auxiliary.disk.jdbc.dsfactory.JndiDataSourceFactory;
 import org.apache.commons.jcs3.auxiliary.disk.jdbc.dsfactory.SharedPoolDataSourceFactory;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCDiskCacheUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCDiskCacheUnitTest.java
index a58423b..7a0243a 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCDiskCacheUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCDiskCacheUnitTest.java
@@ -32,9 +32,6 @@
 import org.apache.commons.jcs3.engine.control.MockCompositeCacheManager;
 import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
-import org.apache.commons.jcs3.auxiliary.disk.jdbc.JDBCDiskCache;
-import org.apache.commons.jcs3.auxiliary.disk.jdbc.JDBCDiskCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.disk.jdbc.JDBCDiskCacheFactory;
 import org.apache.commons.jcs3.auxiliary.disk.jdbc.dsfactory.DataSourceFactory;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 import org.apache.commons.jcs3.utils.serialization.StandardSerializer;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/mysql/MySQLDiskCacheUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/mysql/MySQLDiskCacheUnitTest.java
index ee2cc64..4a54786 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/mysql/MySQLDiskCacheUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/mysql/MySQLDiskCacheUnitTest.java
@@ -23,8 +23,6 @@
 
 import org.apache.commons.jcs3.auxiliary.disk.jdbc.TableState;
 import org.apache.commons.jcs3.auxiliary.disk.jdbc.dsfactory.SharedPoolDataSourceFactory;
-import org.apache.commons.jcs3.auxiliary.disk.jdbc.mysql.MySQLDiskCache;
-import org.apache.commons.jcs3.auxiliary.disk.jdbc.mysql.MySQLDiskCacheAttributes;
 import org.apache.commons.jcs3.engine.control.CompositeCacheManager;
 
 import junit.framework.TestCase;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/mysql/util/ScheduleParserUtilUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/mysql/util/ScheduleParserUtilUnitTest.java
index dad2f2d..62319e5 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/mysql/util/ScheduleParserUtilUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/mysql/util/ScheduleParserUtilUnitTest.java
@@ -22,8 +22,6 @@
 import java.text.ParseException;
 import java.util.Date;
 
-import org.apache.commons.jcs3.auxiliary.disk.jdbc.mysql.util.ScheduleParser;
-
 import junit.framework.TestCase;
 
 /**
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheNoWaitFacadeUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheNoWaitFacadeUnitTest.java
index df8eb47..7373b85 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheNoWaitFacadeUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheNoWaitFacadeUnitTest.java
@@ -1,9 +1,5 @@
 package org.apache.commons.jcs3.auxiliary.lateral;
 
-import org.apache.commons.jcs3.auxiliary.lateral.LateralCache;
-import org.apache.commons.jcs3.auxiliary.lateral.LateralCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.lateral.LateralCacheNoWait;
-import org.apache.commons.jcs3.auxiliary.lateral.LateralCacheNoWaitFacade;
 import org.apache.commons.jcs3.auxiliary.lateral.behavior.ILateralCacheAttributes;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPConcurrentRandomTestUtil.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPConcurrentRandomTestUtil.java
index 386d548..17d74c7 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPConcurrentRandomTestUtil.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPConcurrentRandomTestUtil.java
@@ -25,8 +25,6 @@
 
 import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.LateralTCPService;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.TCPLateralCacheAttributes;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPDiscoveryListenerUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPDiscoveryListenerUnitTest.java
index f855686..d6ced53 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPDiscoveryListenerUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPDiscoveryListenerUnitTest.java
@@ -27,9 +27,6 @@
 import org.apache.commons.jcs3.auxiliary.lateral.LateralCacheNoWait;
 import org.apache.commons.jcs3.auxiliary.lateral.LateralCacheNoWaitFacade;
 import org.apache.commons.jcs3.auxiliary.lateral.behavior.ILateralCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.LateralTCPCacheFactory;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.LateralTCPDiscoveryListener;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.TCPLateralCacheAttributes;
 import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.behavior.ITCPLateralCacheAttributes;
 import org.apache.commons.jcs3.engine.behavior.IElementSerializer;
 import org.apache.commons.jcs3.engine.control.CompositeCacheManager;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPFilterRemoveHashCodeUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPFilterRemoveHashCodeUnitTest.java
index 7e028ca..8cb1979 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPFilterRemoveHashCodeUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPFilterRemoveHashCodeUnitTest.java
@@ -25,8 +25,6 @@
 
 import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.LateralTCPService;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.TCPLateralCacheAttributes;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPIssueRemoveOnPutUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPIssueRemoveOnPutUnitTest.java
index e4e9323..4466620 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPIssueRemoveOnPutUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPIssueRemoveOnPutUnitTest.java
@@ -25,8 +25,6 @@
 
 import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.LateralTCPService;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.TCPLateralCacheAttributes;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/TestTCPLateralUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/TestTCPLateralUnitTest.java
index 2f5d1e0..dd241fd 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/TestTCPLateralUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/TestTCPLateralUnitTest.java
@@ -9,10 +9,6 @@
 import org.apache.commons.jcs3.auxiliary.lateral.LateralCacheAttributes;
 import org.apache.commons.jcs3.auxiliary.lateral.LateralCommand;
 import org.apache.commons.jcs3.auxiliary.lateral.LateralElementDescriptor;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.LateralTCPListener;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.LateralTCPSender;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.LateralTCPService;
-import org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.TCPLateralCacheAttributes;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 import org.apache.commons.jcs3.engine.behavior.ICompositeCacheManager;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/MockRemoteCacheClient.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/MockRemoteCacheClient.java
index fba96ba..4526969 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/MockRemoteCacheClient.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/MockRemoteCacheClient.java
@@ -28,7 +28,6 @@
 
 import org.apache.commons.jcs3.auxiliary.AbstractAuxiliaryCache;
 import org.apache.commons.jcs3.auxiliary.AuxiliaryCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheAttributes;
 import org.apache.commons.jcs3.auxiliary.remote.behavior.IRemoteCacheClient;
 import org.apache.commons.jcs3.auxiliary.remote.behavior.IRemoteCacheListener;
 import org.apache.commons.jcs3.engine.CacheStatus;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheClientTester.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheClientTester.java
index cdcef1f..9884871 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheClientTester.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheClientTester.java
@@ -30,7 +30,6 @@
 
 import org.apache.commons.jcs3.access.exception.CacheException;
 import org.apache.commons.jcs3.access.exception.ObjectExistsException;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteUtils;
 import org.apache.commons.jcs3.auxiliary.remote.behavior.IRemoteCacheConstants;
 import org.apache.commons.jcs3.auxiliary.remote.behavior.IRemoteCacheListener;
 import org.apache.commons.jcs3.auxiliary.remote.server.behavior.RemoteType;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheListenerUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheListenerUnitTest.java
index 49d5dcd..9c5894d 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheListenerUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheListenerUnitTest.java
@@ -22,8 +22,6 @@
 import junit.framework.TestCase;
 
 import org.apache.commons.jcs3.engine.control.MockCompositeCacheManager;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheListener;
 import org.apache.commons.jcs3.auxiliary.remote.behavior.IRemoteCacheAttributes;
 import org.apache.commons.jcs3.engine.CacheElementSerialized;
 import org.apache.commons.jcs3.engine.ElementAttributes;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheNoWaitFacadeUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheNoWaitFacadeUnitTest.java
index 5968936..ec30bd6 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheNoWaitFacadeUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheNoWaitFacadeUnitTest.java
@@ -3,10 +3,6 @@
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCache;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheNoWait;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheNoWaitFacade;
 import org.apache.commons.jcs3.auxiliary.remote.behavior.IRemoteCacheAttributes;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheNoWaitUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheNoWaitUnitTest.java
index 44a121c..55e5d24 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheNoWaitUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheNoWaitUnitTest.java
@@ -6,7 +6,6 @@
 import java.util.Set;
 
 import org.apache.commons.jcs3.utils.timing.SleepUtil;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheNoWait;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.CacheStatus;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheUnitTest.java
index 3ab8ce8..9c2058c 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteCacheUnitTest.java
@@ -25,9 +25,6 @@
 import junit.framework.TestCase;
 
 import org.apache.commons.jcs3.auxiliary.MockCacheEventLogger;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCache;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheMonitor;
 import org.apache.commons.jcs3.auxiliary.remote.behavior.IRemoteCacheAttributes;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.ZombieCacheServiceNonLocal;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteUtilsUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteUtilsUnitTest.java
index dfec2f7..1074b16 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteUtilsUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/RemoteUtilsUnitTest.java
@@ -21,9 +21,6 @@
 
 import java.rmi.registry.Registry;
 
-import org.apache.commons.jcs3.auxiliary.remote.RemoteLocation;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteUtils;
-
 import junit.framework.TestCase;
 
 /**
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/TestRemoteCache.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/TestRemoteCache.java
index 79ba83e..91498f1 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/TestRemoteCache.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/TestRemoteCache.java
@@ -8,10 +8,6 @@
 import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
 import org.apache.commons.jcs3.auxiliary.AuxiliaryCache;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheFactory;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheManager;
-import org.apache.commons.jcs3.auxiliary.remote.RemoteUtils;
 import org.apache.commons.jcs3.auxiliary.remote.server.RemoteCacheServerFactory;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.behavior.ICompositeCacheManager;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/client/RemoteHttpCacheClientUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/client/RemoteHttpCacheClientUnitTest.java
index b9c0ce8..f70f30f 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/client/RemoteHttpCacheClientUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/client/RemoteHttpCacheClientUnitTest.java
@@ -27,8 +27,6 @@
 import java.util.Map;
 import java.util.Set;
 
-import org.apache.commons.jcs3.auxiliary.remote.http.client.RemoteHttpCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.remote.http.client.RemoteHttpCacheClient;
 import org.apache.commons.jcs3.auxiliary.remote.value.RemoteCacheResponse;
 import org.apache.commons.jcs3.auxiliary.remote.value.RemoteRequestType;
 import org.apache.commons.jcs3.engine.CacheElement;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/client/RemoteHttpCacheFactoryUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/client/RemoteHttpCacheFactoryUnitTest.java
index d2c5388..d7f9bd5 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/client/RemoteHttpCacheFactoryUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/client/RemoteHttpCacheFactoryUnitTest.java
@@ -2,9 +2,6 @@
 
 import org.apache.commons.jcs3.engine.control.MockCompositeCacheManager;
 import org.apache.commons.jcs3.auxiliary.AuxiliaryCache;
-import org.apache.commons.jcs3.auxiliary.remote.http.client.RemoteHttpCacheAttributes;
-import org.apache.commons.jcs3.auxiliary.remote.http.client.RemoteHttpCacheClient;
-import org.apache.commons.jcs3.auxiliary.remote.http.client.RemoteHttpCacheFactory;
 import org.apache.commons.jcs3.auxiliary.remote.http.client.behavior.IRemoteHttpCacheClient;
 import org.apache.commons.jcs3.engine.behavior.ICompositeCacheManager;
 import org.apache.commons.jcs3.engine.behavior.IElementSerializer;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/server/RemoteHttpCacheServiceUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/server/RemoteHttpCacheServiceUnitTest.java
index 6922f56..a978121 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/server/RemoteHttpCacheServiceUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/server/RemoteHttpCacheServiceUnitTest.java
@@ -22,8 +22,6 @@
 import junit.framework.TestCase;
 import org.apache.commons.jcs3.auxiliary.MockCacheEventLogger;
 import org.apache.commons.jcs3.engine.control.MockCompositeCacheManager;
-import org.apache.commons.jcs3.auxiliary.remote.http.server.RemoteHttpCacheServerAttributes;
-import org.apache.commons.jcs3.auxiliary.remote.http.server.RemoteHttpCacheService;
 import org.apache.commons.jcs3.engine.CacheElement;
 
 import java.util.HashSet;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/server/RemoteHttpCacheServletUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/server/RemoteHttpCacheServletUnitTest.java
index b865d69..6576dff 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/server/RemoteHttpCacheServletUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/http/server/RemoteHttpCacheServletUnitTest.java
@@ -26,7 +26,6 @@
 import junit.framework.TestCase;
 
 import org.apache.commons.jcs3.auxiliary.remote.MockRemoteCacheService;
-import org.apache.commons.jcs3.auxiliary.remote.http.server.RemoteHttpCacheServlet;
 import org.apache.commons.jcs3.auxiliary.remote.util.RemoteCacheRequestFactory;
 import org.apache.commons.jcs3.auxiliary.remote.value.RemoteCacheRequest;
 import org.apache.commons.jcs3.auxiliary.remote.value.RemoteCacheResponse;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/BasicRemoteCacheClientServerUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/BasicRemoteCacheClientServerUnitTest.java
index cb04b7c..bc8ec5a 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/BasicRemoteCacheClientServerUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/BasicRemoteCacheClientServerUnitTest.java
@@ -33,7 +33,6 @@
 import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheAttributes;
 import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheFactory;
 import org.apache.commons.jcs3.auxiliary.remote.RemoteCacheManager;
-import org.apache.commons.jcs3.auxiliary.remote.server.RemoteCacheServer;
 import org.apache.commons.jcs3.engine.CacheElement;
 import org.apache.commons.jcs3.engine.CacheStatus;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RegistryKeepAliveRunnerUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RegistryKeepAliveRunnerUnitTest.java
index 4b6aec1..5fe25d7 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RegistryKeepAliveRunnerUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RegistryKeepAliveRunnerUnitTest.java
@@ -21,7 +21,6 @@
 
 import junit.framework.TestCase;
 import org.apache.commons.jcs3.auxiliary.MockCacheEventLogger;
-import org.apache.commons.jcs3.auxiliary.remote.server.RegistryKeepAliveRunner;
 
 /** Unit tests for the registry keep alive runner. */
 public class RegistryKeepAliveRunnerUnitTest
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerAttributesUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerAttributesUnitTest.java
index 1e2569b..3a100cd 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerAttributesUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerAttributesUnitTest.java
@@ -1,6 +1,5 @@
 package org.apache.commons.jcs3.auxiliary.remote.server;
 
-import org.apache.commons.jcs3.auxiliary.remote.server.RemoteCacheServerAttributes;
 import org.apache.commons.jcs3.auxiliary.remote.server.behavior.RemoteType;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerFactoryUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerFactoryUnitTest.java
index a5a4a0e..4aa511f 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerFactoryUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerFactoryUnitTest.java
@@ -26,9 +26,6 @@
 
 import org.apache.commons.jcs3.auxiliary.remote.behavior.ICommonRemoteCacheAttributes;
 import org.apache.commons.jcs3.auxiliary.remote.behavior.IRemoteCacheConstants;
-import org.apache.commons.jcs3.auxiliary.remote.server.RemoteCacheServerAttributes;
-import org.apache.commons.jcs3.auxiliary.remote.server.RemoteCacheServerFactory;
-import org.apache.commons.jcs3.auxiliary.remote.server.TimeoutConfigurableRMISocketFactory;
 
 /** Unit tests for the factory */
 public class RemoteCacheServerFactoryUnitTest
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerStartupUtil.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerStartupUtil.java
index ba42cb1..a2624cb 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerStartupUtil.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerStartupUtil.java
@@ -25,7 +25,6 @@
 
 import org.apache.commons.jcs3.auxiliary.remote.RemoteUtils;
 import org.apache.commons.jcs3.auxiliary.remote.server.RemoteCacheServer;
-import org.apache.commons.jcs3.auxiliary.remote.server.RemoteCacheServerFactory;
 import org.apache.commons.jcs3.log.Log;
 import org.apache.commons.jcs3.log.LogManager;
 import org.apache.commons.jcs3.utils.net.HostNameUtil;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerUnitTest.java
index ca8ed9f..07600df 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/RemoteCacheServerUnitTest.java
@@ -28,8 +28,6 @@
 import org.apache.commons.jcs3.auxiliary.remote.MockRemoteCacheListener;
 import org.apache.commons.jcs3.utils.timing.SleepUtil;
 import org.apache.commons.jcs3.auxiliary.remote.RemoteUtils;
-import org.apache.commons.jcs3.auxiliary.remote.server.RemoteCacheServer;
-import org.apache.commons.jcs3.auxiliary.remote.server.RemoteCacheServerAttributes;
 import org.apache.commons.jcs3.auxiliary.remote.server.behavior.IRemoteCacheServerAttributes;
 import org.apache.commons.jcs3.auxiliary.remote.server.behavior.RemoteType;
 import org.apache.commons.jcs3.engine.CacheElement;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/TimeoutConfigurableRMISocketFactoryUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/TimeoutConfigurableRMISocketFactoryUnitTest.java
index 4e91feb..b814fcf 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/TimeoutConfigurableRMISocketFactoryUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/server/TimeoutConfigurableRMISocketFactoryUnitTest.java
@@ -25,8 +25,6 @@
 import java.net.ServerSocket;
 import java.net.Socket;
 
-import org.apache.commons.jcs3.auxiliary.remote.server.TimeoutConfigurableRMISocketFactory;
-
 /** Unit tests for the custom factory */
 public class TimeoutConfigurableRMISocketFactoryUnitTest
     extends TestCase
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/util/RemoteCacheRequestFactoryUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/util/RemoteCacheRequestFactoryUnitTest.java
index 3fac53d..728aa22 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/util/RemoteCacheRequestFactoryUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/auxiliary/remote/util/RemoteCacheRequestFactoryUnitTest.java
@@ -25,7 +25,6 @@
 import java.util.Collections;
 import java.util.Set;
 
-import org.apache.commons.jcs3.auxiliary.remote.util.RemoteCacheRequestFactory;
 import org.apache.commons.jcs3.auxiliary.remote.value.RemoteCacheRequest;
 import org.apache.commons.jcs3.auxiliary.remote.value.RemoteRequestType;
 import org.apache.commons.jcs3.engine.CacheElement;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/CacheEventQueueFactoryUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/CacheEventQueueFactoryUnitTest.java
index 23dec3e..a9569bc 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/CacheEventQueueFactoryUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/CacheEventQueueFactoryUnitTest.java
@@ -1,7 +1,6 @@
 package org.apache.commons.jcs3.engine;
 
 import org.apache.commons.jcs3.auxiliary.remote.MockRemoteCacheListener;
-import org.apache.commons.jcs3.engine.CacheEventQueueFactory;
 import org.apache.commons.jcs3.engine.behavior.ICacheEventQueue;
 import org.apache.commons.jcs3.engine.behavior.ICacheListener;
 import org.apache.commons.jcs3.engine.behavior.ICacheEventQueue.QueueType;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/ElementAttributesUtils.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/ElementAttributesUtils.java
index 82743ba..11b7931 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/ElementAttributesUtils.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/ElementAttributesUtils.java
@@ -37,7 +37,7 @@
  * under the License.
  */
 
-import org.apache.commons.jcs3.engine.ElementAttributes;
+
 
 /**
  * Allow test access to set last access time without exposing public method
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/EventQueueConcurrentLoadTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/EventQueueConcurrentLoadTest.java
index f219f89..d9abc7b 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/EventQueueConcurrentLoadTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/EventQueueConcurrentLoadTest.java
@@ -21,8 +21,6 @@
 
 import java.io.IOException;
 
-import org.apache.commons.jcs3.engine.CacheElement;
-import org.apache.commons.jcs3.engine.CacheEventQueue;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 import org.apache.commons.jcs3.engine.behavior.ICacheListener;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/ZombieCacheServiceNonLocalUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/ZombieCacheServiceNonLocalUnitTest.java
index 1d2b89b..0f2bb7f 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/ZombieCacheServiceNonLocalUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/ZombieCacheServiceNonLocalUnitTest.java
@@ -1,7 +1,5 @@
 package org.apache.commons.jcs3.engine;
 
-import org.apache.commons.jcs3.engine.CacheElement;
-import org.apache.commons.jcs3.engine.ZombieCacheServiceNonLocal;
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CacheManagerStatsUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CacheManagerStatsUnitTest.java
index e9fc3d8..2883723 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CacheManagerStatsUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CacheManagerStatsUnitTest.java
@@ -2,7 +2,6 @@
 
 import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
-import org.apache.commons.jcs3.engine.control.CompositeCacheManager;
 import org.apache.commons.jcs3.engine.stats.behavior.ICacheStats;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheConfiguratorUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheConfiguratorUnitTest.java
index b0481e2..426e6bc 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheConfiguratorUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheConfiguratorUnitTest.java
@@ -29,9 +29,6 @@
 import org.apache.commons.jcs3.engine.logging.MockCacheEventLogger;
 import org.apache.commons.jcs3.auxiliary.AuxiliaryCache;
 import org.apache.commons.jcs3.auxiliary.AuxiliaryCacheConfigurator;
-import org.apache.commons.jcs3.engine.control.CompositeCache;
-import org.apache.commons.jcs3.engine.control.CompositeCacheConfigurator;
-import org.apache.commons.jcs3.engine.control.CompositeCacheManager;
 
 /** Unit tests for the configurator. */
 public class CompositeCacheConfiguratorUnitTest
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheDiskUsageUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheDiskUsageUnitTest.java
index 75a0bcf..46b53b2 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheDiskUsageUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheDiskUsageUnitTest.java
@@ -40,7 +40,6 @@
 import org.apache.commons.jcs3.engine.behavior.IElementAttributes;
 import org.apache.commons.jcs3.engine.behavior.IElementSerializer;
 import org.apache.commons.jcs3.engine.behavior.ICacheType.CacheType;
-import org.apache.commons.jcs3.engine.control.CompositeCache;
 import org.apache.commons.jcs3.engine.logging.behavior.ICacheEventLogger;
 import org.apache.commons.jcs3.engine.stats.behavior.IStats;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheManagerTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheManagerTest.java
index e9f144b..c2cf3ef 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheManagerTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheManagerTest.java
@@ -2,8 +2,7 @@
 
 import org.apache.commons.jcs3.engine.CacheStatus;
 import org.apache.commons.jcs3.engine.CompositeCacheAttributes;
-import org.apache.commons.jcs3.engine.control.CompositeCache;
-import org.apache.commons.jcs3.engine.control.CompositeCacheManager;
+
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheUnitTest.java
index d9e2f5b..f544805 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/control/CompositeCacheUnitTest.java
@@ -31,8 +31,6 @@
 import org.apache.commons.jcs3.engine.behavior.ICompositeCacheAttributes;
 import org.apache.commons.jcs3.engine.behavior.IElementAttributes;
 import org.apache.commons.jcs3.engine.behavior.ICacheType.CacheType;
-import org.apache.commons.jcs3.engine.control.CompositeCache;
-
 import java.io.IOException;
 import java.util.Map;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/logging/CacheEventLoggerDebugLoggerUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/logging/CacheEventLoggerDebugLoggerUnitTest.java
index a4d80de..ca78461 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/logging/CacheEventLoggerDebugLoggerUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/logging/CacheEventLoggerDebugLoggerUnitTest.java
@@ -3,7 +3,6 @@
 import java.io.StringWriter;
 
 import org.apache.commons.jcs3.TestLogConfigurationUtil;
-import org.apache.commons.jcs3.engine.logging.CacheEventLoggerDebugLogger;
 import org.apache.commons.jcs3.engine.logging.behavior.ICacheEvent;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/logging/MockCacheEventLogger.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/logging/MockCacheEventLogger.java
index 036bcdb..b8cdff6 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/logging/MockCacheEventLogger.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/logging/MockCacheEventLogger.java
@@ -19,7 +19,6 @@
  * under the License.
  */
 
-import org.apache.commons.jcs3.engine.logging.CacheEvent;
 import org.apache.commons.jcs3.engine.logging.behavior.ICacheEvent;
 import org.apache.commons.jcs3.engine.logging.behavior.ICacheEventLogger;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/match/KeyMatcherPatternImpllUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/match/KeyMatcherPatternImpllUnitTest.java
index eea1518..21331d2 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/match/KeyMatcherPatternImpllUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/match/KeyMatcherPatternImpllUnitTest.java
@@ -24,8 +24,6 @@
 import java.util.HashSet;
 import java.util.Set;
 
-import org.apache.commons.jcs3.engine.match.KeyMatcherPatternImpl;
-
 /** Unit tests for the key matcher. */
 public class KeyMatcherPatternImpllUnitTest
     extends TestCase
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/fifo/FIFOMemoryCacheUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/fifo/FIFOMemoryCacheUnitTest.java
index f6095a0..5feae67 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/fifo/FIFOMemoryCacheUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/fifo/FIFOMemoryCacheUnitTest.java
@@ -26,8 +26,6 @@
 import org.apache.commons.jcs3.engine.ElementAttributes;
 import org.apache.commons.jcs3.engine.behavior.ICompositeCacheAttributes;
 import org.apache.commons.jcs3.engine.control.CompositeCache;
-import org.apache.commons.jcs3.engine.memory.fifo.FIFOMemoryCache;
-
 import junit.framework.TestCase;
 
 /** Unit tests for the fifo implementation. */
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/lru/LHMLRUMemoryCacheConcurrentUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/lru/LHMLRUMemoryCacheConcurrentUnitTest.java
index b403244..e66aab0 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/lru/LHMLRUMemoryCacheConcurrentUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/lru/LHMLRUMemoryCacheConcurrentUnitTest.java
@@ -31,7 +31,6 @@
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 import org.apache.commons.jcs3.engine.control.CompositeCache;
 import org.apache.commons.jcs3.engine.control.CompositeCacheManager;
-import org.apache.commons.jcs3.engine.memory.lru.LRUMemoryCache;
 
 /**
  * Test which exercises the LRUMemory cache. This one uses three different
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/lru/LHMLRUMemoryCacheUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/lru/LHMLRUMemoryCacheUnitTest.java
index c73d915..bf4d0e4 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/lru/LHMLRUMemoryCacheUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/lru/LHMLRUMemoryCacheUnitTest.java
@@ -32,7 +32,6 @@
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 import org.apache.commons.jcs3.engine.control.CompositeCache;
 import org.apache.commons.jcs3.engine.control.CompositeCacheManager;
-import org.apache.commons.jcs3.engine.memory.lru.LHMLRUMemoryCache;
 
 /**
  * Tests for the test LHMLRU implementation.
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/lru/LRUMemoryCacheConcurrentUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/lru/LRUMemoryCacheConcurrentUnitTest.java
index 4af77dc..fecb5f7 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/lru/LRUMemoryCacheConcurrentUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/lru/LRUMemoryCacheConcurrentUnitTest.java
@@ -31,7 +31,6 @@
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 import org.apache.commons.jcs3.engine.control.CompositeCache;
 import org.apache.commons.jcs3.engine.control.CompositeCacheManager;
-import org.apache.commons.jcs3.engine.memory.lru.LRUMemoryCache;
 
 /**
  * Test which exercises the LRUMemory cache. This one uses three different
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/mru/LRUvsMRUPerformanceTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/mru/LRUvsMRUPerformanceTest.java
index b2524c7..f0ebd8b 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/mru/LRUvsMRUPerformanceTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/mru/LRUvsMRUPerformanceTest.java
@@ -3,7 +3,6 @@
 import org.apache.commons.jcs3.JCS;
 import org.apache.commons.jcs3.access.CacheAccess;
 import org.apache.commons.jcs3.engine.memory.lru.LRUMemoryCache;
-import org.apache.commons.jcs3.engine.memory.mru.MRUMemoryCache;
 import org.apache.commons.jcs3.log.Log;
 import org.apache.commons.jcs3.log.LogManager;
 
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/mru/MRUMemoryCacheUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/mru/MRUMemoryCacheUnitTest.java
index 42ce655..6d65ed6 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/mru/MRUMemoryCacheUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/mru/MRUMemoryCacheUnitTest.java
@@ -32,7 +32,6 @@
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 import org.apache.commons.jcs3.engine.control.CompositeCache;
 import org.apache.commons.jcs3.engine.control.CompositeCacheManager;
-import org.apache.commons.jcs3.engine.memory.mru.MRUMemoryCache;
 
 /**
  * Tests for the test MRU implementation.
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/shrinking/ShrinkerThreadUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/shrinking/ShrinkerThreadUnitTest.java
index 99ee54c..a08d675 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/shrinking/ShrinkerThreadUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/shrinking/ShrinkerThreadUnitTest.java
@@ -30,8 +30,6 @@
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 import org.apache.commons.jcs3.engine.control.CompositeCache;
 import org.apache.commons.jcs3.engine.control.event.behavior.ElementEventType;
-import org.apache.commons.jcs3.engine.memory.shrinking.ShrinkerThread;
-
 import java.io.IOException;
 
 /**
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/soft/SoftReferenceMemoryCacheUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/soft/SoftReferenceMemoryCacheUnitTest.java
index b2aa8c1..f7426dd 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/soft/SoftReferenceMemoryCacheUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/engine/memory/soft/SoftReferenceMemoryCacheUnitTest.java
@@ -30,8 +30,6 @@
 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
 import org.apache.commons.jcs3.engine.control.CompositeCache;
 import org.apache.commons.jcs3.engine.control.CompositeCacheManager;
-import org.apache.commons.jcs3.engine.memory.soft.SoftReferenceMemoryCache;
-
 import junit.framework.TestCase;
 
 /**
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/access/JCSWorkerUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/access/JCSWorkerUnitTest.java
index bb78ce8..1ed8304 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/access/JCSWorkerUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/access/JCSWorkerUnitTest.java
@@ -1,8 +1,6 @@
 package org.apache.commons.jcs3.utils.access;
 
-import org.apache.commons.jcs3.utils.access.AbstractJCSWorkerHelper;
-import org.apache.commons.jcs3.utils.access.JCSWorker;
-import org.apache.commons.jcs3.utils.access.JCSWorkerHelper;
+
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/config/PropertySetterUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/config/PropertySetterUnitTest.java
index 36e3fbb..531f3cf 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/config/PropertySetterUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/config/PropertySetterUnitTest.java
@@ -23,7 +23,6 @@
 
 import java.io.File;
 
-import org.apache.commons.jcs3.utils.config.PropertySetter;
 import org.junit.Test;
 
 /**
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/MockDiscoveryListener.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/MockDiscoveryListener.java
index a16fd1d..b779431 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/MockDiscoveryListener.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/MockDiscoveryListener.java
@@ -22,7 +22,6 @@
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.commons.jcs3.utils.discovery.DiscoveredService;
 import org.apache.commons.jcs3.utils.discovery.behavior.IDiscoveryListener;
 
 /** Mock listener, for testing. */
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/UDPDiscoverySenderUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/UDPDiscoverySenderUnitTest.java
index 20ed743..43295e0 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/UDPDiscoverySenderUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/UDPDiscoverySenderUnitTest.java
@@ -2,9 +2,6 @@
 
 import java.util.ArrayList;
 
-import org.apache.commons.jcs3.utils.discovery.UDPDiscoveryMessage;
-import org.apache.commons.jcs3.utils.discovery.UDPDiscoveryReceiver;
-import org.apache.commons.jcs3.utils.discovery.UDPDiscoverySender;
 import org.apache.commons.jcs3.utils.discovery.UDPDiscoveryMessage.BroadcastType;
 
 /*
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/UDPDiscoveryServiceUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/UDPDiscoveryServiceUnitTest.java
index 6fc4a7d..01191e3 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/UDPDiscoveryServiceUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/UDPDiscoveryServiceUnitTest.java
@@ -21,10 +21,6 @@
 
 import java.util.ArrayList;
 
-import org.apache.commons.jcs3.utils.discovery.DiscoveredService;
-import org.apache.commons.jcs3.utils.discovery.UDPDiscoveryAttributes;
-import org.apache.commons.jcs3.utils.discovery.UDPDiscoveryService;
-
 import junit.framework.TestCase;
 
 /** Unit tests for the service. */
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/UDPDiscoveryUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/UDPDiscoveryUnitTest.java
index 0980193..c055b35 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/UDPDiscoveryUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/discovery/UDPDiscoveryUnitTest.java
@@ -22,11 +22,6 @@
 import java.util.ArrayList;
 
 import org.apache.commons.jcs3.utils.timing.SleepUtil;
-import org.apache.commons.jcs3.utils.discovery.UDPDiscoveryAttributes;
-import org.apache.commons.jcs3.utils.discovery.UDPDiscoveryReceiver;
-import org.apache.commons.jcs3.utils.discovery.UDPDiscoverySender;
-import org.apache.commons.jcs3.utils.discovery.UDPDiscoveryService;
-
 import junit.framework.TestCase;
 
 /**
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/net/HostNameUtilUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/net/HostNameUtilUnitTest.java
index 5810cc3..15ad160 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/net/HostNameUtilUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/net/HostNameUtilUnitTest.java
@@ -23,8 +23,6 @@
 
 import java.net.UnknownHostException;
 
-import org.apache.commons.jcs3.utils.net.HostNameUtil;
-
 /** Tests for the host name util. */
 public class HostNameUtilUnitTest
     extends TestCase
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/serialization/CompressingSerializerUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/serialization/CompressingSerializerUnitTest.java
index 8ea76ee..accf958 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/serialization/CompressingSerializerUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/serialization/CompressingSerializerUnitTest.java
@@ -23,9 +23,6 @@
 
 import java.io.IOException;
 
-import org.apache.commons.jcs3.utils.serialization.CompressingSerializer;
-import org.apache.commons.jcs3.utils.serialization.StandardSerializer;
-
 /**
  * Tests the compressing serializer.
  */
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/serialization/SerializationConversionUtilUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/serialization/SerializationConversionUtilUnitTest.java
index af7d0c8..92c0069 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/serialization/SerializationConversionUtilUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/serialization/SerializationConversionUtilUnitTest.java
@@ -29,8 +29,6 @@
 import org.apache.commons.jcs3.engine.behavior.ICacheElementSerialized;
 import org.apache.commons.jcs3.engine.behavior.IElementAttributes;
 import org.apache.commons.jcs3.engine.behavior.IElementSerializer;
-import org.apache.commons.jcs3.utils.serialization.SerializationConversionUtil;
-import org.apache.commons.jcs3.utils.serialization.StandardSerializer;
 
 /**
  * Tests the serialization conversion util.
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/serialization/StandardSerializerUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/serialization/StandardSerializerUnitTest.java
index cfa38ce..1b73a7a 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/serialization/StandardSerializerUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/serialization/StandardSerializerUnitTest.java
@@ -1,6 +1,6 @@
 package org.apache.commons.jcs3.utils.serialization;
 
-import org.apache.commons.jcs3.utils.serialization.StandardSerializer;
+
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/DoubleLinkedListDumpUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/DoubleLinkedListDumpUnitTest.java
index 2aa4a11..3664ece 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/DoubleLinkedListDumpUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/DoubleLinkedListDumpUnitTest.java
@@ -3,8 +3,7 @@
 import java.io.StringWriter;
 
 import org.apache.commons.jcs3.TestLogConfigurationUtil;
-import org.apache.commons.jcs3.utils.struct.DoubleLinkedList;
-import org.apache.commons.jcs3.utils.struct.DoubleLinkedListNode;
+
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/DoubleLinkedListUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/DoubleLinkedListUnitTest.java
index 616ee5e..23408d3 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/DoubleLinkedListUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/DoubleLinkedListUnitTest.java
@@ -1,7 +1,6 @@
 package org.apache.commons.jcs3.utils.struct;
 
-import org.apache.commons.jcs3.utils.struct.DoubleLinkedList;
-import org.apache.commons.jcs3.utils.struct.DoubleLinkedListNode;
+
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/JCSvsCommonsLRUMapPerformanceTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/JCSvsCommonsLRUMapPerformanceTest.java
index cfc39a3..5a86a20 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/JCSvsCommonsLRUMapPerformanceTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/JCSvsCommonsLRUMapPerformanceTest.java
@@ -23,8 +23,6 @@
 
 import org.apache.commons.jcs3.log.Log;
 import org.apache.commons.jcs3.log.LogManager;
-import org.apache.commons.jcs3.utils.struct.LRUMap;
-
 import junit.framework.TestCase;
 
 /**
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/LRUMapConcurrentUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/LRUMapConcurrentUnitTest.java
index 06c9829..7e95479 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/LRUMapConcurrentUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/LRUMapConcurrentUnitTest.java
@@ -21,7 +21,7 @@
 
 import java.util.Iterator;
 
-import org.apache.commons.jcs3.utils.struct.LRUMap;
+
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/LRUMapPerformanceTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/LRUMapPerformanceTest.java
index ed9a63f..a03f2f0 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/LRUMapPerformanceTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/LRUMapPerformanceTest.java
@@ -21,8 +21,6 @@
 
 import java.util.Map;
 
-import org.apache.commons.jcs3.utils.struct.LRUMap;
-
 import junit.framework.TestCase;
 
 /**
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/LRUMapUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/LRUMapUnitTest.java
index c65707f..664cd02 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/LRUMapUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/struct/LRUMapUnitTest.java
@@ -22,8 +22,6 @@
 import java.util.Map;
 import java.util.Map.Entry;
 
-import org.apache.commons.jcs3.utils.struct.LRUMap;
-
 import java.util.Set;
 
 import junit.framework.TestCase;
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/threadpool/ThreadPoolManagerUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/threadpool/ThreadPoolManagerUnitTest.java
index d68a40f..4988f36 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/threadpool/ThreadPoolManagerUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/threadpool/ThreadPoolManagerUnitTest.java
@@ -24,8 +24,6 @@
 import java.util.concurrent.ExecutorService;
 
 import org.apache.commons.jcs3.utils.props.PropertyLoader;
-import org.apache.commons.jcs3.utils.threadpool.ThreadPoolManager;
-
 import junit.framework.TestCase;
 
 /**
diff --git a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/zip/CompressionUtilUnitTest.java b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/zip/CompressionUtilUnitTest.java
index fd3c618..bde7c65 100644
--- a/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/zip/CompressionUtilUnitTest.java
+++ b/commons-jcs-core/src/test/java/org/apache/commons/jcs3/utils/zip/CompressionUtilUnitTest.java
@@ -25,8 +25,6 @@
 import java.io.IOException;
 import java.util.zip.GZIPOutputStream;
 
-import org.apache.commons.jcs3.utils.zip.CompressionUtil;
-
 /** Unit tests for the compression util */
 public class CompressionUtilUnitTest
     extends TestCase
diff --git a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/ExpiryAwareCache.java b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/ExpiryAwareCache.java
index 1b865c9..871a2db 100644
--- a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/ExpiryAwareCache.java
+++ b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/ExpiryAwareCache.java
@@ -48,7 +48,7 @@
         super.doExpires(element);
         for (final JCSListener<A, B> listener : listeners.values())
         {
-            listener.onExpired(Arrays.<CacheEntryEvent<? extends A, ? extends B>> asList(new JCSCacheEntryEvent<A, B>(
+            listener.onExpired(Arrays.<CacheEntryEvent<? extends A, ? extends B>> asList(new JCSCacheEntryEvent<>(
                     cacheRef, EventType.REMOVED, null, element.getKey(), element.getVal())));
         }
     }
diff --git a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSCache.java b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSCache.java
index 61b39a1..8270fe6 100644
--- a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSCache.java
+++ b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSCache.java
@@ -242,7 +242,7 @@
 
     private ICacheElement<K, V> updateElement(final K key, final V v, final Duration duration, final IElementAttributes attrs)
     {
-        final ICacheElement<K, V> element = new CacheElement<K, V>(name, key, v);
+        final ICacheElement<K, V> element = new CacheElement<>(name, key, v);
         if (duration != null)
         {
             attrs.setTimeFactorForMilliseconds(1);
@@ -265,7 +265,7 @@
             final K copy = copy(serializer, manager.getClassLoader(), key);
             try
             {
-                delegate.update(new CacheElement<K, V>(name, copy, element.getVal(), element.getElementAttributes()));
+                delegate.update(new CacheElement<>(name, copy, element.getVal(), element.getElementAttributes()));
             }
             catch (final IOException e)
             {
@@ -418,7 +418,7 @@
         delegate.remove(cacheKey);
         for (final JCSListener<K, V> listener : listeners.values())
         {
-            listener.onExpired(Arrays.<CacheEntryEvent<? extends K, ? extends V>> asList(new JCSCacheEntryEvent<K, V>(this,
+            listener.onExpired(Arrays.<CacheEntryEvent<? extends K, ? extends V>> asList(new JCSCacheEntryEvent<>(this,
                     EventType.REMOVED, null, cacheKey, elt.getVal())));
         }
     }
@@ -854,7 +854,7 @@
     public Iterator<Entry<K, V>> iterator()
     {
         assertNotClosed();
-        final Iterator<K> keys = new HashSet<K>(delegate.getKeySet()).iterator();
+        final Iterator<K> keys = new HashSet<>(delegate.getKeySet()).iterator();
         return new Iterator<Entry<K, V>>()
         {
             private K lastKey = null;
diff --git a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSCachingManager.java b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSCachingManager.java
index 8cb5a98..0e47b9b 100644
--- a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSCachingManager.java
+++ b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSCachingManager.java
@@ -79,7 +79,7 @@
                 protected <K, V> CompositeCache<K, V> newCache(
                         final ICompositeCacheAttributes cca, final IElementAttributes ea)
                 {
-                    return new ExpiryAwareCache<K, V>( cca, ea );
+                    return new ExpiryAwareCache<>( cca, ea );
                 }
             };
         }
diff --git a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSConfiguration.java b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSConfiguration.java
index ffd7195..6e72696 100644
--- a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSConfiguration.java
+++ b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSConfiguration.java
@@ -48,6 +48,10 @@
 public class JCSConfiguration<K, V> implements CompleteConfiguration<K, V>
 {
 
+    /**
+     * 
+     */
+    private static final long serialVersionUID = 3322514800838658711L;
     private final Class<K> keyType;
     private final Class<V> valueType;
     private final boolean storeByValue;
diff --git a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CachePutInterceptor.java b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CachePutInterceptor.java
index ec8416d..3c608c1 100644
--- a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CachePutInterceptor.java
+++ b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CachePutInterceptor.java
@@ -37,6 +37,10 @@
 @Priority(/*LIBRARY_BEFORE*/1000)
 public class CachePutInterceptor implements Serializable
 {
+    /**
+     * 
+     */
+    private static final long serialVersionUID = -4327240193421847822L;
     @Inject
     private CDIJCacheHelper helper;
 
diff --git a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CacheRemoveAllInterceptor.java b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CacheRemoveAllInterceptor.java
index b719852..d43527c 100644
--- a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CacheRemoveAllInterceptor.java
+++ b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CacheRemoveAllInterceptor.java
@@ -36,6 +36,10 @@
 @Priority(/*LIBRARY_BEFORE*/1000)
 public class CacheRemoveAllInterceptor implements Serializable
 {
+    /**
+     * 
+     */
+    private static final long serialVersionUID = -51261182430571546L;
     @Inject
     private CDIJCacheHelper helper;
 
diff --git a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CacheRemoveInterceptor.java b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CacheRemoveInterceptor.java
index cfd1738..7b63f2e 100644
--- a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CacheRemoveInterceptor.java
+++ b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CacheRemoveInterceptor.java
@@ -37,6 +37,10 @@
 @Priority(/*LIBRARY_BEFORE*/1000)
 public class CacheRemoveInterceptor implements Serializable
 {
+    /**
+     * 
+     */
+    private static final long serialVersionUID = -7441959527908682219L;
     @Inject
     private CDIJCacheHelper helper;
 
diff --git a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CacheResultInterceptor.java b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CacheResultInterceptor.java
index 71701c3..00fa61f 100644
--- a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CacheResultInterceptor.java
+++ b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/CacheResultInterceptor.java
@@ -36,6 +36,10 @@
 @Priority(/*LIBRARY_BEFORE*/1000)
 public class CacheResultInterceptor implements Serializable
 {
+    /**
+     * 
+     */
+    private static final long serialVersionUID = 3763867761251365670L;
     @Inject
     private CDIJCacheHelper helper;
 
diff --git a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/GeneratedCacheKeyImpl.java b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/GeneratedCacheKeyImpl.java
index 1802fc0..2f49b53 100644
--- a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/GeneratedCacheKeyImpl.java
+++ b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/GeneratedCacheKeyImpl.java
@@ -23,6 +23,10 @@
 
 public class GeneratedCacheKeyImpl implements GeneratedCacheKey
 {
+    /**
+     * 
+     */
+    private static final long serialVersionUID = -5081690220034319047L;
     private final Object[] params;
     private final int hash;
 
diff --git a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/MakeJCacheCDIInterceptorFriendly.java b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/MakeJCacheCDIInterceptorFriendly.java
index 22232d0..de7b2aa 100644
--- a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/MakeJCacheCDIInterceptorFriendly.java
+++ b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/cdi/MakeJCacheCDIInterceptorFriendly.java
@@ -140,8 +140,18 @@
             this.id =  "JCS#CDIHelper#" + id;
 
             this.qualifiers = new HashSet<>();
-            this.qualifiers.add(new AnnotationLiteral<Default>() {});
-            this.qualifiers.add(new AnnotationLiteral<Any>() {});
+            this.qualifiers.add(new AnnotationLiteral<Default>() {
+
+                /**
+                 * 
+                 */
+                private static final long serialVersionUID = 3314657767813459983L;});
+            this.qualifiers.add(new AnnotationLiteral<Any>() {
+
+                /**
+                 * 
+                 */
+                private static final long serialVersionUID = 7419841275942488170L;});
         }
 
         @Override
diff --git a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/lang/Lang3Substitutor.java b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/lang/Lang3Substitutor.java
index 88be6b4..fa6888a 100644
--- a/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/lang/Lang3Substitutor.java
+++ b/commons-jcs-jcache/src/main/java/org/apache/commons/jcs3/jcache/lang/Lang3Substitutor.java
@@ -26,7 +26,12 @@
 
 public class Lang3Substitutor implements Subsitutor
 {
-    private static final StrSubstitutor SUBSTITUTOR = new StrSubstitutor(new HashMap<String, Object>() {{
+    private static final StrSubstitutor SUBSTITUTOR = new StrSubstitutor(new HashMap<String, Object>() {/**
+         * 
+         */
+        private static final long serialVersionUID = 6568870218326105688L;
+
+    {
         putAll(Map.class.cast(System.getProperties()));
         putAll(System.getenv());
     }});
diff --git a/commons-jcs-jcache/src/test/java/org/apache/commons/jcs3/jcache/CacheTest.java b/commons-jcs-jcache/src/test/java/org/apache/commons/jcs3/jcache/CacheTest.java
index dfb5f70..43ba755 100644
--- a/commons-jcs-jcache/src/test/java/org/apache/commons/jcs3/jcache/CacheTest.java
+++ b/commons-jcs-jcache/src/test/java/org/apache/commons/jcs3/jcache/CacheTest.java
@@ -29,10 +29,8 @@
 import javax.cache.configuration.Factory;
 import javax.cache.configuration.MutableConfiguration;
 import javax.cache.event.CacheEntryCreatedListener;
-import javax.cache.event.CacheEntryEvent;
 import javax.cache.event.CacheEntryEventFilter;
 import javax.cache.event.CacheEntryListener;
-import javax.cache.event.CacheEntryListenerException;
 import javax.cache.event.CacheEntryRemovedListener;
 import javax.cache.event.CacheEntryUpdatedListener;
 import javax.cache.expiry.AccessedExpiryPolicy;
@@ -113,6 +111,11 @@
         final Set<String> event = new HashSet<>();
         cache.registerCacheEntryListener(new CacheEntryListenerConfiguration<String, String>()
         {
+            /**
+             * 
+             */
+            private static final long serialVersionUID = -8253611067837660184L;
+
             @Override
             public Factory<CacheEntryListener<? super String, ? super String>> getCacheEntryListenerFactory()
             {
@@ -139,6 +142,11 @@
         });
         cache.registerCacheEntryListener(new CacheEntryListenerConfiguration<String, String>()
         {
+            /**
+             * 
+             */
+            private static final long serialVersionUID = 74774789357823553L;
+
             @Override
             public Factory<CacheEntryListener<? super String, ? super String>> getCacheEntryListenerFactory()
             {
@@ -165,6 +173,11 @@
         });
         cache.registerCacheEntryListener(new CacheEntryListenerConfiguration<String, String>()
         {
+            /**
+             * 
+             */
+            private static final long serialVersionUID = 2442816458182278519L;
+
             @Override
             public Factory<CacheEntryListener<? super String, ? super String>> getCacheEntryListenerFactory()
             {
@@ -212,6 +225,11 @@
         final CacheManager cacheManager = cachingProvider.getCacheManager();
         cacheManager.createCache("default", new CompleteConfiguration<Object, Object>()
         {
+            /**
+             * 
+             */
+            private static final long serialVersionUID = -4598329777808827966L;
+
             @Override
             public boolean isReadThrough()
             {
diff --git a/commons-jcs-jcache/src/test/java/org/apache/commons/jcs3/jcache/ExpiryListenerTest.java b/commons-jcs-jcache/src/test/java/org/apache/commons/jcs3/jcache/ExpiryListenerTest.java
index 2dd6e6f..1f682ce 100644
--- a/commons-jcs-jcache/src/test/java/org/apache/commons/jcs3/jcache/ExpiryListenerTest.java
+++ b/commons-jcs-jcache/src/test/java/org/apache/commons/jcs3/jcache/ExpiryListenerTest.java
@@ -67,6 +67,10 @@
     }
 
     private static class CacheEntryExpiredListenerImpl implements CacheEntryExpiredListener<String, String>, Serializable {
+        /**
+         * 
+         */
+        private static final long serialVersionUID = -5070377769541346377L;
         private final Collection<CacheEntryEvent<? extends String, ? extends String>> events =
                 new ArrayList<>();
 
diff --git a/commons-jcs-jcache/src/test/java/org/apache/commons/jcs3/jcache/cdi/CDIJCacheHelperTest.java b/commons-jcs-jcache/src/test/java/org/apache/commons/jcs3/jcache/cdi/CDIJCacheHelperTest.java
index bf67273..c53ceea 100644
--- a/commons-jcs-jcache/src/test/java/org/apache/commons/jcs3/jcache/cdi/CDIJCacheHelperTest.java
+++ b/commons-jcs-jcache/src/test/java/org/apache/commons/jcs3/jcache/cdi/CDIJCacheHelperTest.java
@@ -30,7 +30,6 @@
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 
-import org.apache.commons.jcs3.jcache.cdi.CDIJCacheHelper;
 import org.junit.Test;
 
 public class CDIJCacheHelperTest
diff --git a/pom.xml b/pom.xml
index 7768c50..bbf7d57 100644
--- a/pom.xml
+++ b/pom.xml
@@ -528,9 +528,9 @@
 
     <commons.componentid>jcs</commons.componentid>
     <commons.osgi.symbolicName>org.apache.commons.${project.artifactId}</commons.osgi.symbolicName>
-    <commons.module.name>org.apache.commons.jcs</commons.module.name>
+    <commons.module.name>org.apache.commons.jcs3</commons.module.name>
     <commons.release.version>3.0</commons.release.version>
-    <commons.release.name>commons-jcs-dist-3.0</commons.release.name>
+    <commons.release.name>commons-jcs3-dist-3.0</commons.release.name>
     <commons.release.desc>(Java 8+)</commons.release.desc>
     <!-- The RC version used in the staging repository URL. -->
     <commons.rc.version>RC1</commons.rc.version>
diff --git a/xdocs/UpgradingFrom2x.xml b/xdocs/UpgradingFrom2x.xml
index 409fbae..dd1a9c2 100644
--- a/xdocs/UpgradingFrom2x.xml
+++ b/xdocs/UpgradingFrom2x.xml
@@ -30,6 +30,11 @@
         This document lists a number of things that changed in Commons JCS 
         3.0. 
       </p>
+      <subsection name="Minimum Java Requirements">
+        <p>
+          JCS 3.x requires Java 8 to run. It was tested successfully with JDK 14.
+        </p>
+      </subsection>
       <subsection name="Package Names and Maven Coordinates">
         <p>
           The Apache Commons project requires a change of the package names 
@@ -82,7 +87,7 @@
          </p>
          <p>
            Optionally, JCS can use Log4j2 as a log system. You can activate 
-           it by providing log4j.core as a dependency, a log configuration
+           it by providing log4j-core as a dependency, a log configuration
            such as log4j2.xml and a system property
           <source><![CDATA[
 -Djcs.logSystem=log4j2
@@ -104,6 +109,3 @@
     </section>
   </body>
 </document>
-
-
-
