diff --git a/lib/java/src/com/facebook/thrift/TApplicationException.java b/lib/java/src/com/facebook/thrift/TApplicationException.java
index 893a389..fed9a63 100644
--- a/lib/java/src/com/facebook/thrift/TApplicationException.java
+++ b/lib/java/src/com/facebook/thrift/TApplicationException.java
@@ -19,6 +19,8 @@
  */
 public class TApplicationException extends TException {
 
+  private static final long serialVersionUID = 1L;
+
   public static final int UNKNOWN = 0;
   public static final int UNKNOWN_METHOD = 1;
   public static final int INVALID_MESSAGE_TYPE = 2;
@@ -52,7 +54,7 @@
 
   public static TApplicationException read(TProtocol iprot) throws TException {
     TField field;
-    TStruct struct = iprot.readStructBegin();
+    iprot.readStructBegin();
 
     String message = null;
     int type = UNKNOWN;
diff --git a/lib/java/src/com/facebook/thrift/TDeserializer.java b/lib/java/src/com/facebook/thrift/TDeserializer.java
index f2a1ac2..99fd056 100644
--- a/lib/java/src/com/facebook/thrift/TDeserializer.java
+++ b/lib/java/src/com/facebook/thrift/TDeserializer.java
@@ -10,10 +10,8 @@
 import java.io.UnsupportedEncodingException;
 
 import com.facebook.thrift.protocol.TBinaryProtocol;
-import com.facebook.thrift.protocol.TProtocol;
 import com.facebook.thrift.protocol.TProtocolFactory;
 import com.facebook.thrift.transport.TIOStreamTransport;
-import com.facebook.thrift.transport.TTransport;
 
 /**
  * Generic utility for easily deserializing objects from a byte array or Java
diff --git a/lib/java/src/com/facebook/thrift/TException.java b/lib/java/src/com/facebook/thrift/TException.java
index a328bfd..4a7b1a5 100644
--- a/lib/java/src/com/facebook/thrift/TException.java
+++ b/lib/java/src/com/facebook/thrift/TException.java
@@ -12,6 +12,9 @@
  * @author Mark Slee <mcslee@facebook.com>
  */
 public class TException extends Exception {
+
+  private static final long serialVersionUID = 1L;
+
   public TException() {
     super();
   }
diff --git a/lib/java/src/com/facebook/thrift/TSerializer.java b/lib/java/src/com/facebook/thrift/TSerializer.java
index e9dd882..1df068d 100644
--- a/lib/java/src/com/facebook/thrift/TSerializer.java
+++ b/lib/java/src/com/facebook/thrift/TSerializer.java
@@ -13,7 +13,6 @@
 import com.facebook.thrift.protocol.TProtocol;
 import com.facebook.thrift.protocol.TProtocolFactory;
 import com.facebook.thrift.transport.TIOStreamTransport;
-import com.facebook.thrift.transport.TTransport;
 
 /**
  * Generic utility for easily serializing objects into a byte array or Java
diff --git a/lib/java/src/com/facebook/thrift/protocol/TBinaryProtocol.java b/lib/java/src/com/facebook/thrift/protocol/TBinaryProtocol.java
index 750dce1..d8c9473 100644
--- a/lib/java/src/com/facebook/thrift/protocol/TBinaryProtocol.java
+++ b/lib/java/src/com/facebook/thrift/protocol/TBinaryProtocol.java
@@ -6,11 +6,10 @@
 
 package com.facebook.thrift.protocol;
 
+import java.io.UnsupportedEncodingException;
+
 import com.facebook.thrift.TException;
 import com.facebook.thrift.transport.TTransport;
-import com.facebook.thrift.transport.TTransportException;
-
-import java.io.UnsupportedEncodingException;
 
 /**
  * Binary protocol implementation for thrift.
diff --git a/lib/java/src/com/facebook/thrift/protocol/TProtocol.java b/lib/java/src/com/facebook/thrift/protocol/TProtocol.java
index 3e7e7f0..551ef50 100644
--- a/lib/java/src/com/facebook/thrift/protocol/TProtocol.java
+++ b/lib/java/src/com/facebook/thrift/protocol/TProtocol.java
@@ -19,6 +19,7 @@
   /**
    * Prevent direct instantiation
    */
+  @SuppressWarnings("unused")
   private TProtocol() {}
 
   /**
diff --git a/lib/java/src/com/facebook/thrift/protocol/TProtocolException.java b/lib/java/src/com/facebook/thrift/protocol/TProtocolException.java
index 9373de3..cea786a 100644
--- a/lib/java/src/com/facebook/thrift/protocol/TProtocolException.java
+++ b/lib/java/src/com/facebook/thrift/protocol/TProtocolException.java
@@ -15,6 +15,8 @@
  */
 public class TProtocolException extends TException {
 
+
+  private static final long serialVersionUID = 1L;
   public static final int UNKNOWN = 0;
   public static final int INVALID_DATA = 1;
   public static final int NEGATIVE_SIZE = 2;
diff --git a/lib/java/src/com/facebook/thrift/protocol/TSimpleJSONProtocol.java b/lib/java/src/com/facebook/thrift/protocol/TSimpleJSONProtocol.java
index 8cb3b69..b577c0d 100644
--- a/lib/java/src/com/facebook/thrift/protocol/TSimpleJSONProtocol.java
+++ b/lib/java/src/com/facebook/thrift/protocol/TSimpleJSONProtocol.java
@@ -6,13 +6,12 @@
 
 package com.facebook.thrift.protocol;
 
-import com.facebook.thrift.TByteArrayOutputStream;
-import com.facebook.thrift.TException;
-import com.facebook.thrift.transport.TTransport;
-import java.io.ByteArrayOutputStream;
 import java.io.UnsupportedEncodingException;
 import java.util.Stack;
 
+import com.facebook.thrift.TException;
+import com.facebook.thrift.transport.TTransport;
+
 /**
  * JSON protocol implementation for thrift.
  *
diff --git a/lib/java/src/com/facebook/thrift/transport/TFramedTransport.java b/lib/java/src/com/facebook/thrift/transport/TFramedTransport.java
index 7121c09..a9ad4b3 100644
--- a/lib/java/src/com/facebook/thrift/transport/TFramedTransport.java
+++ b/lib/java/src/com/facebook/thrift/transport/TFramedTransport.java
@@ -7,7 +7,6 @@
 package com.facebook.thrift.transport;
 
 import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
 
 import com.facebook.thrift.TByteArrayOutputStream;
 
diff --git a/lib/java/src/com/facebook/thrift/transport/TTransportException.java b/lib/java/src/com/facebook/thrift/transport/TTransportException.java
index 5b035f9..7a04ae1 100644
--- a/lib/java/src/com/facebook/thrift/transport/TTransportException.java
+++ b/lib/java/src/com/facebook/thrift/transport/TTransportException.java
@@ -15,6 +15,8 @@
  */
 public class TTransportException extends TException {
 
+  private static final long serialVersionUID = 1L;
+
   public static final int UNKNOWN = 0;
   public static final int NOT_OPEN = 1;
   public static final int ALREADY_OPEN = 2;
