Hadoop:ERROR conf.Configuration:解析conf core-site.xml时出错

时间:2018-08-30 14:53:25

标签: xml hadoop

尝试设置单节点系统并在运行时出现此错误

hadoop jar HadoopWordCount.jar HadoopWordCount input.txt output
从命令行

。并得到以下错误。输入,输出和jar文件都在同一目录中。

2018-08-30 10:43:23,266 ERROR conf.Configuration: error parsing conf core-site.xml
com.ctc.wstx.exc.WstxParsingException: Illegal to have multiple roots (start tag in epilog?).
 at [row,col,system-id]: [22,2,"file:/usr/local/Cellar/hadoop/3.1.1/libexec/etc/hadoop/core-site.xml"]

可以在IntelliJ中完美运行,但是分配需要命令行。下面是core-site.xml文件。

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License. See accompanying LICENSE file.
-->

<!-- Put site-specific property overrides in this file. -->

<configuration>
</configuration>

<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/Cellar/hadoop/hdfs/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>

1 个答案:

答案 0 :(得分:0)

属性标签应位于配置标签内

<configuration> 
  <property> 
    <name>hadoop.tmp.dir</name> 
    <value>/usr/local/Cellar/hadoop/hdfs/tmp</value> 
    <description>A base for other temporary directories.</description> 
  </property> 
  <property>
    <name>fs.default.name</name>
    <value>hdfs://localhost:9000</value> 
  </property> 
</configuration>