diff --git a/lib/java/src/org/apache/thrift/async/TAsyncClientManager.java b/lib/java/src/org/apache/thrift/async/TAsyncClientManager.java
index 35fd353..05ab452 100644
--- a/lib/java/src/org/apache/thrift/async/TAsyncClientManager.java
+++ b/lib/java/src/org/apache/thrift/async/TAsyncClientManager.java
@@ -29,7 +29,6 @@
 import java.util.concurrent.ConcurrentLinkedQueue;
 import java.util.concurrent.TimeoutException;
 
-import org.apache.commons.lang.ObjectUtils;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/lib/java/src/org/apache/thrift/transport/TNonblockingServerSocket.java b/lib/java/src/org/apache/thrift/transport/TNonblockingServerSocket.java
index aa1e1e5..3e8b352 100644
--- a/lib/java/src/org/apache/thrift/transport/TNonblockingServerSocket.java
+++ b/lib/java/src/org/apache/thrift/transport/TNonblockingServerSocket.java
@@ -30,7 +30,6 @@
 import java.nio.channels.ServerSocketChannel;
 import java.nio.channels.SocketChannel;
 
-import org.apache.thrift.async.TAsyncClientManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -51,31 +50,11 @@
   private ServerSocket serverSocket_ = null;
 
   /**
-   * Port to listen on
-   */
-  private int port_ = 0;
-
-  /**
    * Timeout for client sockets from accept
    */
   private int clientTimeout_ = 0;
 
   /**
-   * Creates a server socket from underlying socket object
-   */
-  // public TNonblockingServerSocket(ServerSocket serverSocket) {
-  //   this(serverSocket, 0);
-  // }
-
-  /**
-   * Creates a server socket from underlying socket object
-   */
-  // public TNonblockingServerSocket(ServerSocket serverSocket, int clientTimeout) {
-  //   serverSocket_ = serverSocket;
-  //   clientTimeout_ = clientTimeout;
-  // }
-
-  /**
    * Creates just a port listening server socket
    */
   public TNonblockingServerSocket(int port) throws TTransportException {
@@ -87,8 +66,7 @@
    */
   public TNonblockingServerSocket(int port, int clientTimeout) throws TTransportException {
     this(new InetSocketAddress(port), clientTimeout);
-    port_ = port;
-  }  
+  }
 
   public TNonblockingServerSocket(InetSocketAddress bindAddr) throws TTransportException {
     this(bindAddr, 0);
diff --git a/lib/java/src/org/apache/thrift/transport/TNonblockingTransport.java b/lib/java/src/org/apache/thrift/transport/TNonblockingTransport.java
index faf501f..43c1306 100644
--- a/lib/java/src/org/apache/thrift/transport/TNonblockingTransport.java
+++ b/lib/java/src/org/apache/thrift/transport/TNonblockingTransport.java
@@ -20,11 +20,10 @@
 package org.apache.thrift.transport;
 
 import java.io.IOException;
-import java.nio.channels.Selector;
-import java.nio.channels.SelectionKey;
+import java.net.SocketAddress;
 import java.nio.ByteBuffer;
-
-import org.apache.thrift.async.TAsyncMethodCall;
+import java.nio.channels.SelectionKey;
+import java.nio.channels.Selector;
 
 public abstract class TNonblockingTransport extends TTransport {
 
diff --git a/lib/java/src/org/apache/thrift/transport/TSaslClientTransport.java b/lib/java/src/org/apache/thrift/transport/TSaslClientTransport.java
index 8c1d0e5..5aa0ccd 100644
--- a/lib/java/src/org/apache/thrift/transport/TSaslClientTransport.java
+++ b/lib/java/src/org/apache/thrift/transport/TSaslClientTransport.java
@@ -26,7 +26,6 @@
 import javax.security.sasl.SaslClient;
 import javax.security.sasl.SaslException;
 
-import org.apache.thrift.EncodingUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/lib/java/src/org/apache/thrift/transport/TSaslTransport.java b/lib/java/src/org/apache/thrift/transport/TSaslTransport.java
index 24470d9..8348234 100644
--- a/lib/java/src/org/apache/thrift/transport/TSaslTransport.java
+++ b/lib/java/src/org/apache/thrift/transport/TSaslTransport.java
@@ -20,11 +20,8 @@
 package org.apache.thrift.transport;
 
 import java.io.UnsupportedEncodingException;
-import java.util.Arrays;
-import java.util.Map;
 import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Set;
+import java.util.Map;
 
 import javax.security.sasl.Sasl;
 import javax.security.sasl.SaslClient;
diff --git a/lib/java/src/org/apache/thrift/transport/TServerSocket.java b/lib/java/src/org/apache/thrift/transport/TServerSocket.java
index 3eca7bc..aae390d 100644
--- a/lib/java/src/org/apache/thrift/transport/TServerSocket.java
+++ b/lib/java/src/org/apache/thrift/transport/TServerSocket.java
@@ -42,11 +42,6 @@
   private ServerSocket serverSocket_ = null;
 
   /**
-   * Port to listen on
-   */
-  private int port_ = 0;
-
-  /**
    * Timeout for client sockets from accept
    */
   private int clientTimeout_ = 0;
@@ -78,7 +73,6 @@
    */
   public TServerSocket(int port, int clientTimeout) throws TTransportException {
     this(new InetSocketAddress(port), clientTimeout);
-    port_ = port;
   }
 
   public TServerSocket(InetSocketAddress bindAddr) throws TTransportException {
diff --git a/lib/java/test/org/apache/thrift/Fixtures.java b/lib/java/test/org/apache/thrift/Fixtures.java
index 14bdc08..d759bb0 100644
--- a/lib/java/test/org/apache/thrift/Fixtures.java
+++ b/lib/java/test/org/apache/thrift/Fixtures.java
@@ -21,8 +21,16 @@
 package org.apache.thrift;
 
 import java.nio.ByteBuffer;
-import java.util.*;
-import thrift.test.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+
+import thrift.test.Bonk;
+import thrift.test.CompactProtoTestStruct;
+import thrift.test.HolyMoley;
+import thrift.test.Nesting;
+import thrift.test.OneOfEach;
 
 public class Fixtures {
   public static final OneOfEach oneOfEach;
diff --git a/lib/java/test/org/apache/thrift/async/TestTAsyncClient.java b/lib/java/test/org/apache/thrift/async/TestTAsyncClient.java
index d812382..392ca22 100644
--- a/lib/java/test/org/apache/thrift/async/TestTAsyncClient.java
+++ b/lib/java/test/org/apache/thrift/async/TestTAsyncClient.java
@@ -1,8 +1,9 @@
 package org.apache.thrift.async;
 
+import junit.framework.TestCase;
+
 import org.apache.thrift.TException;
 
-import junit.framework.TestCase;
 import thrift.test.Srv;
 import thrift.test.Srv.AsyncClient;
 
diff --git a/lib/java/test/org/apache/thrift/protocol/TestTCompactProtocol.java b/lib/java/test/org/apache/thrift/protocol/TestTCompactProtocol.java
index fb134e6..f0d7895 100755
--- a/lib/java/test/org/apache/thrift/protocol/TestTCompactProtocol.java
+++ b/lib/java/test/org/apache/thrift/protocol/TestTCompactProtocol.java
@@ -20,8 +20,6 @@
 
 package org.apache.thrift.protocol;
 
-import org.apache.thrift.protocol.TCompactProtocol;
-import org.apache.thrift.protocol.TProtocolFactory;
 
 public class TestTCompactProtocol extends ProtocolTestBase {
   @Override
diff --git a/lib/java/test/org/apache/thrift/transport/ReadCountingTransport.java b/lib/java/test/org/apache/thrift/transport/ReadCountingTransport.java
index b2b1e57..8474188 100644
--- a/lib/java/test/org/apache/thrift/transport/ReadCountingTransport.java
+++ b/lib/java/test/org/apache/thrift/transport/ReadCountingTransport.java
@@ -18,8 +18,6 @@
  */
 package org.apache.thrift.transport;
 
-import org.apache.thrift.transport.TTransport;
-import org.apache.thrift.transport.TTransportException;
 
 public class ReadCountingTransport extends TTransport {
   public int readCount = 0;
diff --git a/lib/java/test/org/apache/thrift/transport/TestTSaslTransports.java b/lib/java/test/org/apache/thrift/transport/TestTSaslTransports.java
index ca121c1..10da6d1 100644
--- a/lib/java/test/org/apache/thrift/transport/TestTSaslTransports.java
+++ b/lib/java/test/org/apache/thrift/transport/TestTSaslTransports.java
@@ -33,9 +33,11 @@
 import javax.security.sasl.Sasl;
 import javax.security.sasl.SaslClient;
 import javax.security.sasl.SaslClientFactory;
+import javax.security.sasl.SaslException;
 import javax.security.sasl.SaslServer;
 import javax.security.sasl.SaslServerFactory;
-import javax.security.sasl.SaslException;
+
+import junit.framework.TestCase;
 
 import org.apache.thrift.TProcessor;
 import org.apache.thrift.protocol.TProtocolFactory;
@@ -45,8 +47,6 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import junit.framework.TestCase;
-
 public class TestTSaslTransports extends TestCase {
 
   private static final Logger LOGGER = LoggerFactory.getLogger(TestTSaslTransports.class);
diff --git a/lib/java/test/org/apache/thrift/transport/WriteCountingTransport.java b/lib/java/test/org/apache/thrift/transport/WriteCountingTransport.java
index daad838..358f5c6 100644
--- a/lib/java/test/org/apache/thrift/transport/WriteCountingTransport.java
+++ b/lib/java/test/org/apache/thrift/transport/WriteCountingTransport.java
@@ -18,8 +18,6 @@
  */
 package org.apache.thrift.transport;
 
-import org.apache.thrift.transport.TTransport;
-import org.apache.thrift.transport.TTransportException;
 
 public class WriteCountingTransport extends TTransport {
   public int writeCount = 0;
