There are some libaries in mahout only in very special place for only a few classes. Cant we do without it? all these stats are courtesy of this wonderful eclipse plugin STAN
http://stan4j.com/dependencies/dependency-analysis.html Only 3 classes used for the EDU.oswego library. ./math/src/main/java/org/apache/mahout/math/matrix/linalg/Smp.java:11:import EDU.oswego.cs.dl.util.concurrent.FJTask; ./math/src/main/java/org/apache/mahout/math/matrix/linalg/Smp.java:12:import EDU.oswego.cs.dl.util.concurrent.FJTaskRunnerGroup; ./math/src/main/java/org/apache/mahout/math/matrix/linalg/SmpBlas.java:11:import EDU.oswego.cs.dl.util.concurrent.FJTask; Google commons MapMaker (com.google.common is used at one place indirectly by watchmaker.framework.CachingFitnessEvaluator<T>. com.thoughtworks.xtream used only in mahout.commong.StringUtils. contribs.mx only used by apache commons logging and jets3t net.sf.cglib depends only on xtream and easymock. org.xmlcommons is not used anywhere mahout. nlp, lda and ga use easy mock for test rest dont objenesis also pulled in only by easymock Any thoughts Robin