Hadoop on Mesos fails with "Could not find or load main class org.apache.hadoop.mapred.MesosExecutor"
I found the problem. bin/hadoop
of the downloaded Hadoop distribution attempts to find its location by running which $0
. However, that will find a current Hadoop installation if one exists (i.e. /usr/lib/hadoop
), and will load the jars under that installation's lib
directory instead of the downloaded one's lib
directory.
I had to modify bin/hadoop
of the downloaded distribution to find its own location with dirname $0
instead of which $0
.