分享

HCatlog访问Hive的问题

Gatsby 发表于 2016-5-18 16:51:15 [显示全部楼层] 只看大图 回帖奖励 阅读模式 关闭右栏 3 14532
Maven依赖
  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2.   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  3.   <modelVersion>4.0.0</modelVersion>
  4.   <groupId>edu.wzm.dp</groupId>
  5.   <artifactId>preindex</artifactId>
  6.   <version>1.0</version>
  7.   <packaging>jar</packaging>
  8.   <name>preindex</name>
  9.   <url>http://maven.apache.org</url>
  10.   <properties>
  11.     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  12.     <jdk.version>1.7</jdk.version>
  13.     <hadoop.version>2.2.0</hadoop.version>
  14.     <slf4j.version>1.7.5</slf4j.version>
  15.     <logback.version>1.0.13</logback.version>
  16.   </properties>
  17.   <dependencies>
  18.       <dependency>
  19.           <groupId>org.slf4j</groupId>
  20.           <artifactId>slf4j-api</artifactId>
  21.           <version>${slf4j.version}</version>
  22.       </dependency>
  23.       <dependency>
  24.           <groupId>ch.qos.logback</groupId>
  25.           <artifactId>logback-classic</artifactId>
  26.           <version>${logback.version}</version>
  27.       </dependency>
  28.       <dependency>
  29.           <groupId>org.apache.hadoop</groupId>
  30.           <artifactId>hadoop-common</artifactId>
  31.           <version>${hadoop.version}</version>
  32.           <scope>provided</scope>
  33.       </dependency>
  34.       <dependency>
  35.           <groupId>org.apache.hadoop</groupId>
  36.           <artifactId>hadoop-mapreduce-client-app</artifactId>
  37.           <version>${hadoop.version}</version>
  38.           <scope>provided</scope>
  39.       </dependency>
  40.       <dependency>
  41.           <groupId>org.apache.hive.hcatalog</groupId>
  42.           <artifactId>hive-hcatalog-core</artifactId>
  43.           <version>1.2.1</version>
  44.           <exclusions>
  45.               <exclusion>
  46.                   <groupId>org.apache.hadoop</groupId>
  47.                   <artifactId>hadoop-yarn-server-resourcemanager</artifactId>
  48.               </exclusion>
  49.           </exclusions>
  50.           <!--<version>2.0.0</version>-->
  51.       </dependency>
  52.       <dependency>
  53.           <groupId>mysql</groupId>
  54.           <artifactId>mysql-connector-java</artifactId>
  55.           <version>5.1.6</version>
  56.       </dependency>
  57.     <dependency>
  58.       <groupId>junit</groupId>
  59.       <artifactId>junit</artifactId>
  60.       <version>4.12</version>
  61.       <scope>test</scope>
  62.     </dependency>
  63.   </dependencies>
  64.     <build>
  65.         <plugins>
  66.             <plugin>
  67.                 <groupId>org.apache.maven.plugins</groupId>
  68.                 <artifactId>maven-compiler-plugin</artifactId>
  69.                 <configuration>
  70.                     <source>${jdk.version}</source>
  71.                     <target>${jdk.version}</target>
  72.                 </configuration>
  73.             </plugin>
  74.             <plugin>
  75.                 <groupId>org.apache.maven.plugins</groupId>
  76.                 <artifactId>maven-surefire-plugin</artifactId>
  77.                 <configuration>
  78.                     <skipTests>true</skipTests>
  79.                 </configuration>
  80.             </plugin>
  81.             <plugin>
  82.                 <artifactId>maven-assembly-plugin</artifactId>
  83.                 <version>2.2.1</version>
  84.                 <configuration>
  85.                     <descriptors>
  86.                         <descriptor>src/assembly/assembly.xml</descriptor>
  87.                     </descriptors>
  88.                     <archive>
  89.                         <manifest>
  90.                             <!--<mainClass>com.xiaoju.dp.es.mapreduce.indexbuild.IndexBuilderProcesscess</mainClass>-->
  91.                         </manifest>
  92.                     </archive>
  93.                 </configuration>
  94.                 <executions>
  95.                     <execution>
  96.                         <id>make-assembly</id>
  97.                         <phase>package</phase>
  98.                         <goals>
  99.                             <goal>single</goal>
  100.                         </goals>
  101.                     </execution>
  102.                 </executions>
  103.             </plugin>
  104.         </plugins>
  105.     </build>
  106. </project>
复制代码
报错:
  1. Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hive/ql/io/HiveIgnoreKeyTextOutputFormat
  2.         at java.lang.ClassLoader.defineClass1(Native Method)
  3.         at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
  4.         at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
  5.         at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
  6.         at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
  7.         at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
  8.         at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
  9.         at java.security.AccessController.doPrivileged(Native Method)
  10.         at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
  11.         at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
  12.         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
  13.         at java.lang.ClassLoader.loadClass(ClassLoader.java:412)
  14.         at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
  15.         at java.lang.Class.forName0(Native Method)
  16.         at java.lang.Class.forName(Class.java:274)
  17.         at org.apache.hadoop.hive.common.JavaUtils.loadClass(JavaUtils.java:78)
  18.         at org.apache.hadoop.hive.common.JavaUtils.loadClass(JavaUtils.java:74)
  19.         at org.apache.hive.hcatalog.mapreduce.FosterStorageHandler.<init>(FosterStorageHandler.java:60)
  20.         at org.apache.hive.hcatalog.common.HCatUtil.getStorageHandler(HCatUtil.java:404)
  21.         at org.apache.hive.hcatalog.common.HCatUtil.getStorageHandler(HCatUtil.java:367)
  22.         at org.apache.hive.hcatalog.mapreduce.InitializeInput.extractPartInfo(InitializeInput.java:158)
  23.         at org.apache.hive.hcatalog.mapreduce.InitializeInput.getInputJobInfo(InitializeInput.java:128)
  24.         at org.apache.hive.hcatalog.mapreduce.InitializeInput.setInput(InitializeInput.java:86)
  25.         at org.apache.hive.hcatalog.mapreduce.HCatInputFormat.setInput(HCatInputFormat.java:95)
  26.         at org.apache.hive.hcatalog.mapreduce.HCatInputFormat.setInput(HCatInputFormat.java:61)
  27.         at com.xiaoju.dp.Driver.run(Driver.java:49)
  28.         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
  29.         at com.xiaoju.dp.Driver.main(Driver.java:65)
  30.         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  31.         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
  32.         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  33.         at java.lang.reflect.Method.invoke(Method.java:606)
  34.         at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
  35. Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
  36.         at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
  37.         at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
  38.         at java.security.AccessController.doPrivileged(Native Method)
  39.         at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
  40.         at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
  41.         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
  42.         at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
  43.         ... 33 more
复制代码
我反编译自己打包的jar,可以找到org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
无标题.jpg
有没有人遇到,或者知道怎么解决这个问题?急

已有(3)人评论

跳转到指定楼层
einhep 发表于 2016-5-18 17:09:54
maven里没看到引用hive包
有包也不一定能找到,确保导入import,路径正确等信息
回复

使用道具 举报

nextuser 发表于 2016-5-18 17:11:57
回复

使用道具 举报

Gatsby 发表于 2016-5-18 17:14:06
einhep 发表于 2016-5-18 17:09
maven里没看到引用hive包
有包也不一定能找到,确保导入import,路径正确等信息

看来你一定没用过HCatalog,这个不需要引用hive包
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条