bir Kovanı UDF derlemek nasıl: ile derlemek çalışılıyorBen bu UDF derlemek çalışıyorum
package com.dataminelab.hive.udf;
import org.apache.hadoop.hive.ql.exec.UDF;
import org.apache.hadoop.io.Text;
import java.security.*;
/**
* Calculate md5 of the string
*/
public final class Md5 extends UDF {
public Text evaluate(final Text s) {
if (s == null) {
return null;
}
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(s.toString().getBytes());
byte[] md5hash = md.digest();
StringBuilder builder = new StringBuilder();
for (byte b : md5hash) {
builder.append(Integer.toString((b & 0xff) + 0x100, 16).substring(1));
}
return new Text(builder.toString());
} catch (NoSuchAlgorithmException nsae) {
System.out.println("Cannot find digest algorithm");
System.exit(1);
}
return null;
}
}
:
javac Md5.java
Ama olsun:
Md5.java:2: package org.apache.hadoop.hive.ql.exec does not exist
import org.apache.hadoop.hive.ql.exec.UDF;
^
Md5.java:3: package org.apache.hadoop.io does not exist
import org.apache.hadoop.io.Text;
varsayıyorum bunlar bir kavanozda bir yerde duruyorlar ama hadoopun onları nereye yüklediklerinden emin değilim, bu yüzden onları sınıf yoluma ekleyemiyorum. Varsayılan konumu veya nasıl öğrenileceğini bilen var mı?
buldum lib kovan-0.4.1 kavanoz dosyası eklemek Bir '/ usr/lib/hadoop-0.20/hadoop-core.jar', derleme hatasının bazılarını düzelten, ancak yine de org.apache.hadoop.hive.ql.exec.UDF' – nickponline
GOt bu:/usr/lib/kovan/lib/kovan-exec-0.7.1-cdh3u3.jar' – nickponline