参考https://cwiki.apache.org/confluence/display/Hive/HiveDeveloperFAQ#HiveDeveloperFAQ-Mavensettings
首先你得下载一分源码,这里我下载的是http://archive.cloudera.com/cdh5/cdh/5/hive-1.1.0-cdh5.7.1-src.tar.gz。(根据自己的cdh版本下载相应版本的源码)
当然编译代码得在linux环境下,解压看,cd到源码目录下面,执行mvn clean package -DskipTests -Phadoop-2 -Pdist
经过漫长的编译之后,会在源码目录下面的packaging/target目录下面生成一个tar包,相关的hive模块jar包都能在这个tar包里面找到。
比如我们改了hive的源代码,重新打了包,如何替换运行环境中cdh自身的jar包?
我修改了一下
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob
这个类的源代码,webhcat生成的所有job name在resourcemanager ui界面上都叫做TempletonControllerJob。如果有很多个任务同时执行,不好直观的看出来哪个任务执行的哪个HQL。于是改了一下代码:
private String mak