我正在阅读第2章中的Mahout in Action和the first example。
$ javac RecommenderIntro.java
RecommenderIntro.java:2: error: package org.apache.mahout.cf.taste.impl.model.file does not exist
import org.apache.mahout.cf.taste.impl.model.file.*;
^
RecommenderIntro.java:3: error: package org.apache.mahout.cf.taste.impl.neighborhood does not exist
import org.apache.mahout.cf.taste.impl.neighborhood.*;
^
RecommenderIntro.java:4: error: package org.apache.mahout.cf.taste.impl.recommender does not exist
import org.apache.mahout.cf.taste.impl.recommender.*;我通过yum安装了Mahout:
$ sudo yum install mahout
...
Downloading Packages:
mahout-0.7+12-1.cdh4.2.0.p0.9.el6.noarch.rpm | 94 MB 05:17
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : mahout-0.7+12-1.cdh4.2.0.p0.9.el6.noarch 1/2
Cleanup : mahout-0.7+8-1.cdh4.1.2.p0.12.el6.noarch 2/2
Verifying : mahout-0.7+12-1.cdh4.2.0.p0.9.el6.noarch 1/2
Verifying : mahout-0.7+8-1.cdh4.1.2.p0.12.el6.noarch 2/2
Updated:
mahout.noarch 0:0.7+12-1.cdh4.2.0.p0.9.el6
Complete!我对Java也是完全陌生的。
我是不是编译错了?
在调用javac时,我是否需要在命令行上指定一些包含路径?
发布于 2013-03-23 12:26:24
因此,一旦您知道所需的jars位于何处,这就很简单了。在cloudera mahout发行版中,它们位于/usr/lib/mahout和/usr/lib/mahout/lib中。
$ javac -cp "/usr/lib/mahout/*:/usr/lib/mahout/lib/*:." RecommenderIntro.java
$ java -cp "/usr/lib/mahout/*:/usr/lib/mahout/lib/*:." RecommenderIntro
RecommendedItem[item:104, value:4.257081]发布于 2013-03-21 16:30:54
这是一个简单的Java问题。安装软件包本身不会影响您的javac命令。您始终需要在其-cp参数中包含编译所需的所有类。
使用构建系统要容易得多,比如IDE或Maven,您可以在其中导入依赖项。
发布于 2014-02-15 06:02:44
我们可以使用mahout命令来获取它的classpath,但有时它会提供额外的信息。您可以更改文件$MAHOUT_HOME/bin/mahout以使其正常工作。
javac -cp `mahout classpath` File.java -d classeshttps://stackoverflow.com/questions/15540235
复制相似问题