操作HBase报错:java.lang.NoClassDefFoundError: org/apache/commons/codec/binary/Hex

在java客户端操作hbase时,创建table:

public static void createTable(String tableName, String[] columns)
            throws IOException {
        HBaseAdmin Hbaseadmin = new HBaseAdmin(config);
        if (Hbaseadmin.tableExists(tableName)) {
            System.out.println("表已经存在!");
        } else {
            HTableDescriptor desc = new HTableDescriptor(tableName);
            for (String column : columns) {
                desc.addFamily(new HColumnDescriptor(column));
            }
            Hbaseadmin.createTable(desc);
            System.out.println("表创建成功!");
        }
    }

报错: java.lang.NoClassDefFoundError: org/apache/commons/codec/binary/Hex,

定位到出错行:

if (Hbaseadmin.tableExists(tableName))

经查是缺少相关jar包---commons-codec.jar,添加即可。

如果使用maven的话,添加如下依赖:


    commons-codec
    commons-codec
    1.6

或者到http://commons.apache.org/proper/commons-codec/download_codec.cgi下载jar包,然后添加。

 

最后问题解决!

你可能感兴趣的:(hbase)