0

我试图运行 ./hadoop start-all.sh 不幸的是抛出了这个错误

Exception in thread "main" java.lang.NoClassDefFoundError: start/all/sh
Caused by: java.lang.ClassNotFoundException: start.all.sh
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: start.all.sh. Program will exit.

我虽然它可能是 hadoop 路径,但这似乎并不能解决问题。我在 hadoop-env.sh 中设置的路径是 /usr/local/hadoop/bin`。

我查看了其他具有类似标题 Hadoop 的帖子:奇怪的 ClassNotFoundException

什么被认为是主要课程。我尝试将路径更改为 /usr/local/hadoop/bin/

4

3 回答 3

1

它是一个shell脚本。>> start-all.sh 应该做的。你不需要hadoop。您可以在这里找到更多信息。http://hadoop.apache.org/common/docs/r0.19.2/quickstart.html

于 2012-07-03T18:52:35.330 回答
1

只需运行如下 /path/to/Hadoop/home/bin/start-all.sh 在你的情况下 /user/local/hadoop/bin/start-all.sh

于 2012-07-03T19:02:22.757 回答
0

由于您已经在/hadoop/bin文件夹中。您无需再次提供./hadoop start-all.sh

而是只给./start-all.sh

它不会抛出任何错误,它会启动你的 hadoop 进程。

于 2015-02-04T19:01:56.380 回答