【发布时间】:2016-08-30 06:43:04
【问题描述】:
我是一个 hadoop 初学者。因此,我尝试处理简单的示例以了解环境。所以我创建了一个执行字数统计的 jar - 其中包括 Hadoop: Set up Maven project in 5 Minutes。我的问题:我无法在我的 Hortonworks Sandbox 中执行 .jar。每次我得到错误:
警告:使用“yarn jar”启动 YARN 应用程序。
不是一个有效的 JAR:/user/maria_dev/wordcount3.jar
要启动 jar,我执行了以下步骤:
- 使用 maven 项目在 eclipse 中创建 java 类。
- 导出可运行的 jar 文件。
- 将 jar 加载到 HDFS(使用 Ambari)。
- 使用(使用 root 用户,也尝试使用和不使用 ssh)调用 jar:
hadoop jar /user/maria_dev/wordcount3.jar /user/maria_dev/BlackArrow.txt /user/maria_dev/
与
hadoop jar /user/maria_dev/wordcount3.jar de.kja. wordcount3. wordcount /user/maria_dev/BlackArrow.txt /user/maria_dev/
在这两种情况下,我都会从上面得到错误...
所以我有以下想法:
- 我的 java 类有一个错误 -> 我尝试了各种其他示例,但都不起作用。但是尝试将每个 java 文件的主类作为 java 应用程序运行,我得到以下错误之一:
线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException: 0 在 de.kja.wordcount2.wordcount.main(wordcount.java:47)
或
用法:WordCount [通用选项] 支持的通用选项有 -conf 指定应用程序配置文件 -D 给定属性的使用价值 -fs 指定一个名称节点 -jt 指定作业跟踪器 -files 指定要复制到 map reduce 集群的逗号分隔文件 -libjars 指定要包含在类路径中的逗号分隔的 jar 文件。 -archives 指定要在计算机上取消存档的逗号分隔存档。这 一般命令行语法是 bin/hadoop 命令 [genericOptions] [命令选项]
- 我读到 jar 文件不必上传到 HDFS。那么一定要把它加载到虚拟盒子的本地文件中吗?如果是:我该怎么做?
Hadoop 版本:2.7.1.2.4.0.0-169
如果您需要更多信息,请询问!谢谢你的帮助:)
【问题讨论】:
标签: java eclipse maven hadoop jar