我想运行“ReutersToSparseVectors.java”。我可以毫无问题地编译和创建JAR文件。
我通过以下命令编译了这个文件:
javac -classpath hadoop-core-0.20.205.0.jar:lucene-core-3.6.0.jar:mahout-core-0.7.jar:mahout-math-0.7.jar ReutersToSparseVectors.java
created JAR file with below command:
jar cvf ReutersToSparseVectors.jar ReutersToSparseVectors.class
jar cvf ReutersToSparseVectors.jar ReutersToSparseVectors.class
要运行,请给我以下错误:
无法从中加载Main-Class清单属性 ReutersToSparseVectors.jar
你能帮我解决这个问题吗?
如果这个例子可以用hadoop运行,请告诉我如何用hadoop运行它。
答案 0 :(得分:1)
而不是使用-jar
选项,最好运行:
java -cp mahout-core.jar:... mia.clustering.ch09.ReutersToSparseVectors
或者您可以使用mvn exec:java
命令,例如described in README作为示例...
mvn exec:java -Dexec.mainClass="mia.clustering.ch09.ReutersToSparseVectors"
或者您可以直接从IDE运行此文件(假设您正确导入了Maven项目)。
P.S。你的命令不起作用,因为要使用-jar
开关运行,.jar
文件应该在清单中有特殊条目,描述该类应该默认启动...
P.P.S。最好将书籍的例子与Mahout 0.7一起使用,因为它们已经过测试。如果需要,可以将它与版本0.7一起使用,那么你需要从存储库的mahout-0.7
分支中获取源代码和示例(链接在上面)