1

我下载了“Mahout in Action”第09章的最新版本示例。我可以成功运行几个示例,但是对于三个文件,NewsKMeansClustering.java、ReutersToSparseVectors.java 和 NewsFuzzyKMeansClusteing.java。运行这三个程序会给出类似的错误消息:

2011 年 8 月 3 日下午 2:03:54 org.apache.hadoop.metrics.jvm.JvmMetrics init INFO:使用 processName=JobTracker、sessionId= 初始化 JVM 指标

2011 年 8 月 3 日下午 2:03:54 org.apache.hadoop.mapred.JobClient configureCommandLineOptions 警告:使用 GenericOptionsParser 解析参数。应用程序应该
实现同样的工具。

2011 年 8 月 3 日下午 2:03:54 org.apache.hadoop.mapred.JobClient configureCommandLineOptions 警告:未设置作业 jar 文件。可能找不到用户类。请参阅 JobConf(Class) 或 JobConf#setJar(String)。

线程“主”org.apache.hadoop.mapreduce.lib.input.InvalidInputException 中的异常:输入路径不存在:文件:/home/user1/workspaceMahout1/recommender/inputDir

在 org.apache.hadoop.mapreduce.lib.input.FileInputFormat.listStatus(FileInputFormat.java:224)

在 org.apache.hadoop.mapreduce.lib.input.SequenceFileInputFormat.listStatus(SequenceFileInputFormat.java:55)

在 org.apache.hadoop.mapreduce.lib.input.FileInputFormat.getSplits(FileInputFormat.java:241)

在 org.apache.hadoop.mapred.JobClient.writeNewSplits(JobClient.java:885) 在 org.apache.hadoop.mapred.JobClient.submitJobInternal(JobClient.java:779) 在 org.apache.hadoop.mapreduce.Job.submit (Job.java:432) 在 org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:447)

在 org.apache.mahout.vectorizer.DocumentProcessor.tokenizeDocuments(DocumentProcessor.java:93) 在 mia.clustering.ch09.NewsKMeansClustering.main(NewsKMeansClustering.java:54)

对于上述消息,我不太明白这两个警告是什么意思?而且,看起来应该已经创建了“输入路径”,我该如何创建这种类型的输入?谢谢。

4

2 回答 2

0

您可以忽略警告。错误是您指定的输入目录不存在。它存在吗?你的命令行是什么?

于 2011-08-04T06:41:19.950 回答
0

我遇到了类似的不匹配。https://github.com/tdunning/MiA上的 MiA 文件在某些​​情况下 .csv 文件与 Java 源文件位于同一目录中。例如https://github.com/tdunning/MiA/tree/master/src/main/java/mia/recommender/ch02 ...但是通过 Eclipse,使用 DataModel model = new FileDataModel(new File("intro .csv")); ……没找到。

添加

System.out.println("CWD: "+System.getProperty("user.dir"));

...将显示 Eclipse 正在寻找的位置(在我的情况下,文件树的几个级别,但这可能会根据您设置的方式而有所不同)。

于 2011-10-04T11:48:28.873 回答