• hive_异常_01_ Terminal initialization failed; falling back to unsupported


    一、异常现象

    hive初始化数据库时,在执行了

    schematool  -initSchema -dbType mysql 

    这个命令时,终端抛出如下异常:

    [ray@rayner bin]$ schematool  -initSchema -dbType mysql 
    Metastore connection URL:        jdbc:derby:;databaseName=metastore_db;create=true
    Metastore Connection Driver :    org.apache.derby.jdbc.EmbeddedDriver
    Metastore connection User:       APP
    Starting metastore schema initialization to 1.1.0
    Initialization script hive-schema-1.1.0.mysql.sql
    [ERROR] Terminal initialization failed; falling back to unsupported
    java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected
            at jline.TerminalFactory.create(TerminalFactory.java:101)
            at jline.TerminalFactory.get(TerminalFactory.java:158)
            at org.apache.hive.beeline.BeeLineOpts.<init>(BeeLineOpts.java:73)
            at org.apache.hive.beeline.BeeLine.<init>(BeeLine.java:117)
            at org.apache.hive.beeline.HiveSchemaTool.runBeeLine(HiveSchemaTool.java:346)
            at org.apache.hive.beeline.HiveSchemaTool.runBeeLine(HiveSchemaTool.java:326)
            at org.apache.hive.beeline.HiveSchemaTool.doInit(HiveSchemaTool.java:266)
            at org.apache.hive.beeline.HiveSchemaTool.doInit(HiveSchemaTool.java:243)
            at org.apache.hive.beeline.HiveSchemaTool.main(HiveSchemaTool.java:470)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:606)
            at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
            at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
    
    Exception in thread "main" java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected
            at org.apache.hive.beeline.BeeLineOpts.<init>(BeeLineOpts.java:101)
            at org.apache.hive.beeline.BeeLine.<init>(BeeLine.java:117)
            at org.apache.hive.beeline.HiveSchemaTool.runBeeLine(HiveSchemaTool.java:346)
            at org.apache.hive.beeline.HiveSchemaTool.runBeeLine(HiveSchemaTool.java:326)
            at org.apache.hive.beeline.HiveSchemaTool.doInit(HiveSchemaTool.java:266)
            at org.apache.hive.beeline.HiveSchemaTool.doInit(HiveSchemaTool.java:243)
            at org.apache.hive.beeline.HiveSchemaTool.main(HiveSchemaTool.java:470)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:606)
            at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
            at org.apache.hadoop.util.RunJar.main(RunJar.java:136)

    二、异常原因

     jar版本包冲突

    Hadoop lib 下已经存在了 jline 0.9x ,但是在hive中将Jline升级到了Jline2。

    启动hive的时候,由于hive依赖hadoop,启动hive,会将hadoop的配置以及jar包等等导入到hive中,导致jar包版本冲突。

    三、异常解决

     

    如上图:将hive的新版jline,替换hadoop的老版本即可。

    注:hadoop中的jline所在目录为:

    /developer/hadoop-2.6.0/share/hadoop/yarn/lib

    四、参考资料

    1.Hive startup -[ERROR] Terminal initialization failed; falling back to unsupported

    2.[ERROR] Terminal initialization failed; falling back to unsupported java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected

    4.Hive on Spark: Getting Started--常见异常 

  • 相关阅读:
    3D集合图元:最小边界框/包围盒(boundingbox)
    vs2012下 error4996
    将自己的类封装为lib的方法
    3D特征:关于HFM和HBB
    C++的Matlab接口
    BigDataMini导论
    vs2012编译boost_1_54_0
    RGB_D_开发征程(使用Kinect)
    **PCD数据获取:Kinect+OpenNI+PCL对接(代码)
    PCL:全程详解 VS2010+PCL配置
  • 原文地址:https://www.cnblogs.com/shirui/p/8633020.html
Copyright © 2020-2023  润新知