diff --git a/cli/pom.xml b/cli/pom.xml
index 345f124..e871cbc 100644
--- a/cli/pom.xml
+++ b/cli/pom.xml
@@ -84,7 +84,6 @@
commons-io
commons-io
${commons-io.version}
- test
jline
diff --git a/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java b/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java
index 3cdedba..dc5672a 100644
--- a/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java
+++ b/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java
@@ -24,6 +24,7 @@
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
+import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.io.UnsupportedEncodingException;
@@ -42,6 +43,8 @@
import jline.History;
import jline.SimpleCompletor;
+import org.apache.commons.io.ByteOrderMark;
+import org.apache.commons.io.input.BOMInputStream;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -472,7 +475,11 @@ public int processFile(String fileName) throws IOException {
BufferedReader bufferReader = null;
int rc = 0;
try {
- bufferReader = new BufferedReader(new InputStreamReader(fs.open(path)));
+ BOMInputStream bomIn = new BOMInputStream(
+ fs.open(path), ByteOrderMark.UTF_8,
+ ByteOrderMark.UTF_16LE, ByteOrderMark.UTF_16BE,
+ ByteOrderMark.UTF_32LE, ByteOrderMark.UTF_32BE);
+ bufferReader = new BufferedReader(new InputStreamReader(bomIn));
rc = processReader(bufferReader);
} finally {
IOUtils.closeStream(bufferReader);