TAJO-2188: Can't start tajo daemon on HDP,CDH

Closes #1054
diff --git a/CHANGES b/CHANGES
index 7870f33..82b8489 100644
--- a/CHANGES
+++ b/CHANGES
@@ -169,6 +169,8 @@
 
   BUG FIXES
 
+    TAJO-2188: Can't start tajo daemon on HDP,CDH (jinho)
+
     TAJO-2184: Can not run Tajo with non-default $TAJO_CONF_DIR (Lee Dongjin via hyunsik)
 
     TAJO-2177: In BroadcastJoinRule, the total volume of broadcast tables should be 
diff --git a/tajo-common/src/main/java/org/apache/tajo/util/ClassUtil.java b/tajo-common/src/main/java/org/apache/tajo/util/ClassUtil.java
index c93b751..d85ce9d 100644
--- a/tajo-common/src/main/java/org/apache/tajo/util/ClassUtil.java
+++ b/tajo-common/src/main/java/org/apache/tajo/util/ClassUtil.java
@@ -57,8 +57,11 @@
   private static void findClasses(Set<Class> matchedClassSet, File root, File file, boolean includeJars,
                                   @Nullable Class type, String packageFilter, @Nullable Predicate predicate) {
     if (file.isDirectory()) {
-      for (File child : file.listFiles()) {
-        findClasses(matchedClassSet, root, child, includeJars, type, packageFilter, predicate);
+      File[] children = file.listFiles();
+      if (children != null) {
+        for (File child : children) {
+          findClasses(matchedClassSet, root, child, includeJars, type, packageFilter, predicate);
+        }
       }
     } else {
       if (file.getName().toLowerCase().endsWith(".jar") && includeJars) {