I've been trying to run Mahout on a amazon ec2 instance. I keep getting an error when the script executes.
my config script is like this
CLASSPATH=recommender/recommender.jar:async/async-command.jar:async/lib/:./.m2/repository/org/apache/mahout/mahout-core/0.6/
java.lang.NoClassDefFoundError: org/apache/mahout/cf/taste/impl/model/jdbc/ConnectionPoolDataSource
at org.drupal.project.recommender.RunRecommender$AlgorithmImpl.initDataModel(RunRecommender.java:671)
at org.drupal.project.recommender.RunRecommender$AlgorithmImpl.run(RunRecommender.java:954)
at org.drupal.project.recommender.RunRecommender.run(RunRecommender.java:435)
at org.drupal.project.async_command.Druplet.runSerial(Druplet.java:379)
at org.drupal.project.async_command.Druplet.run(Druplet.java:284)
at org.drupal.project.async_command.CommandLineLauncher.handleExecutables(CommandLineLauncher.java:107)
at org.drupal.project.async_command.CommandLineLauncher.launch(CommandLineLauncher.java:66)
at org.drupal.project.recommender.RecommenderApp.main(RecommenderApp.java:37)
Caused by: java.lang.ClassNotFoundException: org.apache.mahout.cf.taste.impl.model.jdbc.ConnectionPoolDataSource
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
I understand that this means that some class was not found, I have no idea how to fix it
On you amazon box you need to ensure that this path :./.m2/repository/org/apache/mahout/mahout-core/0.6/
exists and unless you are reading class files from this directory, then you modify this line to include that jar file name
e.g.
:./.m2/repository/org/apache/mahout/mahout-core/0.6/mahout_core.0.6.jar