4

I am trying to run Mahout locally (without Hadoop) on a Windows 8 Machine. I realize this is not the optimal set up but that's what I've got to work with.

When I try to run bin/mahout I get the following error:

$ bin/mahout
MAHOUT_LOCAL is set, so we don't add HADOOP_CONF_DIR to classpath.
no HADOOP_HOME set, running locally
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/mahout/dri
ver/MahoutDriver
Caused by: java.lang.ClassNotFoundException: org.apache.mahout.driver.MahoutDriv
er
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: org.apache.mahout.driver.MahoutDriver.  Program w
ill exit.

I've tried both downloading the source and installing with maven and using the precompiled distribution files, both provided here: http://www.poolsaboveground.com/apache/mahout/

I've also tried with both the 0.7 and 0.6 Mahout versions and gotten the same issue. Not sure if it has anything to do with my java version but I'm using: 1.7.0_09. Also I've set the environment variables MAHOUT_LOCAL = true and MAHOUT_HEAPSIZE=128

Cœur
  • 37,241
  • 25
  • 195
  • 267

4 Answers4

4

I never succeded in runing mahout from binary package and it seems that it isn't really a standalone package. Easiest way is to compile from source which is pretty straight forward as far as you have Maven installed:

mkdir mahout
cd mahout/
svn co http://svn.apache.org/repos/asf/mahout/trunk
cd trunk/
mvn compile
mvn install
export MAHOUT_LOCAL=TRUE
export MAHOUT_HEAPSIZE=1000

then you can use this very detailed example to test that your installation is ok: http://www.cs.ucy.ac.cy/courses/EPL660/labs/Stalo/Lab8.pdf

Pr Shadoko
  • 1,649
  • 2
  • 15
  • 16
1

I found only now this question, I'm sorry for the late answer.

I think you can solve your problem installing needed modules via Maven, as explained here, with the command:

mvn -DskipTests -X clean install 
0

Did you try setting the CLASSPATH?

export CLASSPATH=${CLASSPATH}:your_MAHOUT_HOME/mahout-distribution-0.7/lib/hadoop/hadoop-core-0.20.204.0.jar 
Wils
  • 1,211
  • 17
  • 31
  • I haven't tried that yet. As I mentioned I am trying not to use Hadoop, and it appears as though there is no lib folder in my mahout-distribution-0.7. If I am still supposed to set that variable, where exactly do I set that? Sorry if it sounds like a simple question! – Akash Badshah Jun 07 '13 at 01:40
-1

The problem is in the mahout shell script (under bin) that does incorrectly add lib/hadoop/* to the classpath where it should scan the Jar files in this folder to add them indivually to the classpath

Khaled.K
  • 5,828
  • 1
  • 33
  • 51