root@hadoopspark:~/share/mapreduce-demo# jar ./target/WordCountDemo.jar com.org.xidian.MapReduceWordCountDemo /input/input_file.txt /output Illegal option: . Usage: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ... Options: -c create new archive -t list table of contents for archive -x extract named (or all) files from archive -u update existing archive -v generate verbose output on standard output -f specify archive file name -m include manifest information from specified manifest file -n perform Pack200 normalization after creating a new archive -e specify application entry point for stand-alone application bundled into an executable jar file -0 store only; use no ZIP compression -P preserve leading '/' (absolute path) and ".." (parent directory) components from file names -M do not create a manifest file for the entries -i generate index information for the specified jar files -C change to the specified directory and include the following file If any file is a directory then it is processed recursively. The manifest file name, the archive file name and the entry point name are specified in the same order as the 'm', 'f' and 'e' flags. Example 1: to archive two class files into an archive called classes.jar: jar cvf classes.jar Foo.class Bar.class Example 2: use an existing manifest file 'mymanifest' and archive all the files in the foo/ directory into 'classes.jar': jar cvfm classes.jar mymanifest -C foo/ .是为什么
时间: 2024-02-14 19:07:34 浏览: 21
这个错误是因为你在执行 `jar` 命令时,使用了一个不正确的选项 `.`。根据错误信息中的提示,正确的使用方式应该是 `jar cvf <jar-file> <source-files>`。其中,`cvf` 表示创建新的归档文件并显示详细输出,`<jar-file>` 是要创建的归档文件名,`<source-files>` 是要添加到归档文件中的源文件或目录。你需要将命令修改为类似这样的形式:
```
jar cvf WordCountDemo.jar com/org/xidian/*.class
```
其中,`WordCountDemo.jar` 是要创建的归档文件名,`com/org/xidian/*.class` 是要添加到归档文件中的源文件。另外,你需要确保当前工作目录为 `target` 目录,否则需要使用正确的路径来指定归档文件和源文件。
相关问题
hadoop jar ~/hadoop2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar wordcount hdfs://10.0.2.15:9000/words.txt hdfs://10.0.2.15:9000/out JAR does not exist or is not a normal file: /home/datasci/hadoop2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar
这个错误提示表明指定的 JAR 文件不存在或者不是一个普通文件。请确认 JAR 文件路径是否正确,并且确保该文件存在。你可以使用 `ls` 命令查看该文件是否存在,如下所示:
```
ls ~/hadoop2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar
```
如果该文件存在,则可能是文件权限或者文件类型不正确导致的问题。你可以使用 `chmod` 命令修改文件权限,例如:
```
chmod +x ~/hadoop2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar
```
或者你可以尝试重新下载该 JAR 文件,并确保文件类型正确。如果问题仍然存在,请提供更多详细信息以便我能够更好地帮助你。
Not a valid JAR: /home/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar
这个错误提示意味着你尝试在Hadoop中运行一个无效的JAR文件,即`/home/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar`。请确保JAR文件路径正确,并且该文件确实存在于指定的位置。
另外,请检查JAR文件是否已经被正确编译和打包,以确保它可以在Hadoop中运行。你可以尝试使用`jar tf`命令来列出JAR文件中的内容,以确保它包含了必要的类和资源文件。