以前的iteye帐号找不到了,只能换个新马甲了。
最近学习hadoop相关的知识,今天在安装hive的时候,发现一个问题。
问题描述:安装hive的时候,从官方网站http://hive.apache.org/releases.html#Download下载最新的版本(0.10.0),然后解压到自己的目录,在conf目录,cp hive-log4j.properties.template hive-site.xml,然后启动,然后就报错了,错误如下:
WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated. Please use org.apache.hadoop.log.metrics.EventCounter in all the log4j.properties files. [Fatal Error] hive-site.xml:482:3: 元素类型 "description" 必须由匹配的结束标记 "</description>" 终止。 Exception in thread "main" java.lang.RuntimeException: org.xml.sax.SAXParseException; systemId: file:/home/hadoop/hive-0.10.0/conf/hive-site.xml; lineNumber: 482; columnNumber: 3; 元素类型 "description" 必须由匹配的结束标记 "</description>" 终止。 at org.apache.hadoop.conf.Configuration.loadResource(Configuration.java:1263) at org.apache.hadoop.conf.Configuration.loadResources(Configuration.java:1129) at org.apache.hadoop.conf.Configuration.getProps(Configuration.java:1063) at org.apache.hadoop.conf.Configuration.get(Configuration.java:470) at org.apache.hadoop.hive.conf.HiveConf.initialize(HiveConf.java:1002) at org.apache.hadoop.hive.conf.HiveConf.<init>(HiveConf.java:953) at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:635) at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:613) 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:601) at org.apache.hadoop.util.RunJar.main(RunJar.java:156) Caused by: org.xml.sax.SAXParseException; systemId: file:/home/hadoop/hive-0.10.0/conf/hive-site.xml; lineNumber: 482; columnNumber: 3; 元素类型 "description" 必须由匹配的结束标记 "</description>" 终止。 at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:251) at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:300) at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:177) at org.apache.hadoop.conf.Configuration.loadResource(Configuration.java:1160) ... 12 more
问题思考:我自己去查看文件,发现确实部分配置少了结束的标签,然后我尝试不要生成hive-site.xml,直接使用默认的配置文件,发现OK,一切正常,但是我在网上查了那么多,都没有人遇到这个问题,感到非常的困惑,难道只有我出现了??后来我查阅了下资料,发现0.8.0,0.90版本的模板文件都没有问题,而0.10.0,这个出现了没有结束的标签,我很无语,只能表示无语,以后大家尽量用稳定版吧,只能说这么多。看来国外的大牛们也有失误的时候。