To compile Kylin with HBase 1.x, please checkout the 1.x-HBase1.x branch; On 9/22/15, 4:38 PM, "Jack" <[email protected]> wrote:
>Hi all, > I download the source code of Apache Kylin v1.0 and change the >pom.xml at KYLIN_HOME/pom.xml as follow then use mvn to complie: > > <!-- Hadoop versions --> > <hadoop2.version>2.6.0</hadoop2.version> > <yarn.version>2.6.0</yarn.version> > <zookeeper.version>3.4.6</zookeeper.version> > <hive.version>1.1.0</hive.version> > <hive-hcatalog.version>1.1.0</hive-hcatalog.version> > <hbase-hadoop2.version>1.0.0</hbase-hadoop2.version> > > My hadoop,hive,hbase version is : > hadoop : cdh 5.4.3(hadoop2.6.0) > hive: hive-1.1.0-cdh5.4.3 > hbase: HBase 1.0.0-cdh5.4.3 > apache kylin: kylin-1.0-incubating > > I run the sample.sh in KYLIN_HOME/bin the create cube data. > And because the cluster has kerberos authentication, I use the >solution of https://issues.apache.org/jira/browse/KYLIN-1014 > to fix it. > > But the build cube job still fail at step 13#, #13 Step Name: >Create HTable,the error is: > > > java.lang.NoSuchMethodError: >org.apache.hadoop.hbase.HTableDescriptor.setValue(Ljava/lang/String;Ljava/ >lang/String;)Lorg/apache/hadoop/hbase/HTableDescriptor; >at >org.apache.kylin.job.hadoop.hbase.CreateHTableJob.run(CreateHTableJob.java >:80) >at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) >at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84) >at >org.apache.kylin.job.common.HadoopShellExecutable.doWork(HadoopShellExecut >able.java:62) >at >org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutab >le.java:107) >at >org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChai >nedExecutable.java:51) >at >org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutab >le.java:107) >at >org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(Defaul >tScheduler.java:130) >at >java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java: >1145) >at >java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java >:615) >at java.lang.Thread.run(Thread.java:745) > > > I found the HTableDescriptor class in hbase-client.jar but when >I put this jar into KYLIN_HOME/tomcat/webapps/kylin/WEB-INF/lib/ it also >has error: > > > java.lang.LinkageError: loader constraint violation: loader >(instance of org/apache/catalina/loader/WebappClassLoader) previously >initiated loading for a different type with name >"org/apache/hadoop/hbase/HTableDescriptor" >at java.lang.ClassLoader.defineClass1(Native Method) >at java.lang.ClassLoader.defineClass(ClassLoader.java:800) >at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) >at >org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClass >Loader.java:2957) >at >org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.j >ava:1210) >at >org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.j >ava:1690) >at >org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.j >ava:1571) >at >org.apache.kylin.job.hadoop.hbase.CreateHTableJob.run(CreateHTableJob.java >:78) >at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) >at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84) >at >org.apache.kylin.job.common.HadoopShellExecutable.doWork(HadoopShellExecut >able.java:62) >at >org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutab >le.java:107) >at >org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChai >nedExecutable.java:51) >at >org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutab >le.java:107) >at >org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(Defaul >tScheduler.java:130) >at >java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java: >1145) >at >java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java >:615) >at java.lang.Thread.run(Thread.java:745) > > Can anyone tell me how to change the pom.xml to fix this error?
