diff --git a/jvm-packages/checkstyle.xml b/jvm-packages/checkstyle.xml
index 9583ec282..a926eb720 100644
--- a/jvm-packages/checkstyle.xml
+++ b/jvm-packages/checkstyle.xml
@@ -76,7 +76,6 @@
-
@@ -129,25 +128,19 @@
-
-
-
-
diff --git a/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/CustomObjective.java b/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/CustomObjective.java
index be09fd701..1b7dd056b 100644
--- a/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/CustomObjective.java
+++ b/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/CustomObjective.java
@@ -19,10 +19,11 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
-import ml.dmlc.xgboost4j.*;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import ml.dmlc.xgboost4j.*;
+
/**
* an example user define objective and eval
* NOTE: when you do customized loss function, the default prediction value is margin
diff --git a/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/DistTrain.java b/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/DistTrain.java
index 30a8ba85f..e64b3ef70 100644
--- a/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/DistTrain.java
+++ b/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/DistTrain.java
@@ -1,15 +1,9 @@
package ml.dmlc.xgboost4j.demo;
-import java.io.File;
import java.io.IOException;
-import java.util.Arrays;
import java.util.HashMap;
-import ml.dmlc.xgboost4j.Rabit;
-import ml.dmlc.xgboost4j.Booster;
-import ml.dmlc.xgboost4j.DMatrix;
-import ml.dmlc.xgboost4j.XGBoost;
-import ml.dmlc.xgboost4j.XGBoostError;
+import ml.dmlc.xgboost4j.*;
/**
* Distributed training example, used to quick test distributed training.
diff --git a/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/GeneralizedLinearModel.java b/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/GeneralizedLinearModel.java
index 8fae69032..e2e36e351 100644
--- a/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/GeneralizedLinearModel.java
+++ b/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/GeneralizedLinearModel.java
@@ -15,14 +15,14 @@
*/
package ml.dmlc.xgboost4j.demo;
+import java.util.HashMap;
+
import ml.dmlc.xgboost4j.Booster;
import ml.dmlc.xgboost4j.DMatrix;
import ml.dmlc.xgboost4j.XGBoost;
import ml.dmlc.xgboost4j.XGBoostError;
import ml.dmlc.xgboost4j.demo.util.CustomEval;
-import java.util.HashMap;
-
/**
* this is an example of fit generalized linear model in xgboost
* basically, we are using linear model, instead of tree for our boosters
diff --git a/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/util/CustomEval.java b/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/util/CustomEval.java
index 31e841b03..93650abd5 100644
--- a/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/util/CustomEval.java
+++ b/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/util/CustomEval.java
@@ -17,6 +17,7 @@ package ml.dmlc.xgboost4j.demo.util;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+
import ml.dmlc.xgboost4j.DMatrix;
import ml.dmlc.xgboost4j.IEvaluation;
import ml.dmlc.xgboost4j.XGBoostError;
diff --git a/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/util/DataLoader.java b/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/util/DataLoader.java
index 0dcaca8c2..818d61451 100644
--- a/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/util/DataLoader.java
+++ b/jvm-packages/xgboost4j-demo/src/main/java/ml/dmlc/xgboost4j/demo/util/DataLoader.java
@@ -15,12 +15,12 @@
*/
package ml.dmlc.xgboost4j.demo.util;
-import org.apache.commons.lang3.ArrayUtils;
-
import java.io.*;
import java.util.ArrayList;
import java.util.List;
+import org.apache.commons.lang3.ArrayUtils;
+
/**
* util class for loading data
*
diff --git a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/DMatrix.java b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/DMatrix.java
index 1a50137cb..f2100b3a3 100644
--- a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/DMatrix.java
+++ b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/DMatrix.java
@@ -15,11 +15,11 @@
*/
package ml.dmlc.xgboost4j;
+import java.io.IOException;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import java.io.IOException;
-
/**
* DMatrix for xgboost.
*
diff --git a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/JNIErrorHandle.java b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/JNIErrorHandle.java
index 741151d51..d3c63d0ee 100644
--- a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/JNIErrorHandle.java
+++ b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/JNIErrorHandle.java
@@ -15,11 +15,11 @@
*/
package ml.dmlc.xgboost4j;
+import java.io.IOException;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import java.io.IOException;
-
/**
* Error handle for Xgboost.
*/
diff --git a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/JavaBoosterImpl.java b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/JavaBoosterImpl.java
index 9c1659976..76a9195a0 100644
--- a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/JavaBoosterImpl.java
+++ b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/JavaBoosterImpl.java
@@ -15,14 +15,13 @@
*/
package ml.dmlc.xgboost4j;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
import java.io.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
/**
* Booster for xgboost, similar to the python wrapper xgboost.py
diff --git a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/NativeLibLoader.java b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/NativeLibLoader.java
index 85e60b3ef..c23ace8f4 100644
--- a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/NativeLibLoader.java
+++ b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/NativeLibLoader.java
@@ -15,12 +15,12 @@
*/
package ml.dmlc.xgboost4j;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
import java.io.*;
import java.lang.reflect.Field;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
/**
* class to load native library
*
diff --git a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/Rabit.java b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/Rabit.java
index 3c8bc4142..c209a2f5a 100644
--- a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/Rabit.java
+++ b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/Rabit.java
@@ -1,9 +1,10 @@
package ml.dmlc.xgboost4j;
+import java.io.IOException;
+import java.util.Map;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import java.util.Map;
-import java.io.IOException;
/**
* Rabit global class for synchronization.
diff --git a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/XGBoost.java b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/XGBoost.java
index 8b7d3add0..839b006c4 100644
--- a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/XGBoost.java
+++ b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/XGBoost.java
@@ -15,11 +15,10 @@
*/
package ml.dmlc.xgboost4j;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
import java.util.*;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
/**
* trainer for xgboost
diff --git a/jvm-packages/xgboost4j/src/main/scala/ml/dmlc/xgboost4j/scala/ScalaBoosterImpl.scala b/jvm-packages/xgboost4j/src/main/scala/ml/dmlc/xgboost4j/scala/ScalaBoosterImpl.scala
index 06af4541b..fab3c1b19 100644
--- a/jvm-packages/xgboost4j/src/main/scala/ml/dmlc/xgboost4j/scala/ScalaBoosterImpl.scala
+++ b/jvm-packages/xgboost4j/src/main/scala/ml/dmlc/xgboost4j/scala/ScalaBoosterImpl.scala
@@ -19,7 +19,7 @@ package ml.dmlc.xgboost4j.scala
import scala.collection.JavaConverters._
import scala.collection.mutable
-import ml.dmlc.xgboost4j.{Booster => JBooster, IEvaluation, IObjective}
+import ml.dmlc.xgboost4j.{Booster => JBooster}
private[scala] class ScalaBoosterImpl private[xgboost4j](booster: JBooster) extends Booster {
diff --git a/jvm-packages/xgboost4j/src/main/scala/ml/dmlc/xgboost4j/scala/XGBoost.scala b/jvm-packages/xgboost4j/src/main/scala/ml/dmlc/xgboost4j/scala/XGBoost.scala
index 977b2397c..e32bd46a7 100644
--- a/jvm-packages/xgboost4j/src/main/scala/ml/dmlc/xgboost4j/scala/XGBoost.scala
+++ b/jvm-packages/xgboost4j/src/main/scala/ml/dmlc/xgboost4j/scala/XGBoost.scala
@@ -16,7 +16,8 @@
package ml.dmlc.xgboost4j.scala
-import _root_.scala.collection.JavaConverters._
+import scala.collection.JavaConverters._
+
import ml.dmlc.xgboost4j.{XGBoost => JXGBoost}
object XGBoost {
diff --git a/jvm-packages/xgboost4j/src/test/java/ml/dmlc/xgboost4j/BoosterImplTest.java b/jvm-packages/xgboost4j/src/test/java/ml/dmlc/xgboost4j/BoosterImplTest.java
index 59dca16f5..8f0f3a97e 100644
--- a/jvm-packages/xgboost4j/src/test/java/ml/dmlc/xgboost4j/BoosterImplTest.java
+++ b/jvm-packages/xgboost4j/src/test/java/ml/dmlc/xgboost4j/BoosterImplTest.java
@@ -15,13 +15,14 @@
*/
package ml.dmlc.xgboost4j;
+import java.util.HashMap;
+import java.util.Map;
+
import junit.framework.TestCase;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.junit.Test;
-import java.util.*;
-
/**
* test cases for Booster
*
diff --git a/jvm-packages/xgboost4j/src/test/java/ml/dmlc/xgboost4j/DMatrixTest.java b/jvm-packages/xgboost4j/src/test/java/ml/dmlc/xgboost4j/DMatrixTest.java
index 72062a9c4..8868d1600 100644
--- a/jvm-packages/xgboost4j/src/test/java/ml/dmlc/xgboost4j/DMatrixTest.java
+++ b/jvm-packages/xgboost4j/src/test/java/ml/dmlc/xgboost4j/DMatrixTest.java
@@ -15,12 +15,12 @@
*/
package ml.dmlc.xgboost4j;
-import junit.framework.TestCase;
-import org.junit.Test;
-
import java.util.Arrays;
import java.util.Random;
+import junit.framework.TestCase;
+import org.junit.Test;
+
/**
* test cases for DMatrix
*
diff --git a/rabit b/rabit
index be50e7b63..1392e9f3d 160000
--- a/rabit
+++ b/rabit
@@ -1 +1 @@
-Subproject commit be50e7b63224b9fb7ff94ce34df9f8752ef83043
+Subproject commit 1392e9f3da59bd5602ddebee944dd8fb5c6507b0