无法编译WordCount.java mark@maestro1:/usr/lib/hadoop/wordcount_classes$javac-classpath/usr/lib/hadoop/hadoop-common-2.0.0-cdh4.0.1.jar:/usr/lib/hadoop/client/hadoop-mapreduce-client-core-2.0.0-cdh4.0.1.jar-d/usr/lib/hadoop/wordcount_classes/usr/lib/hadoop/wordcount_classes/wordcount.java /usr/lib/hadoop/hadoop-common-2.0.0-cdh4.0.1.jar(org/apache/hadoop/fs/Path.class): 警告:在“LimitedPrivate”类型中找不到注释方法“value()”:找不到org.apache.hadoop.classification.InterfaceAudience的类文件 /usr/lib/hadoop/wordcount\u classes/wordcount.java:14:错误:编写映射时出错:无法创建父目录 公共静态类映射扩展MapReduceBase实现映射器{ ^ 1错误 1警告

无法编译WordCount.java mark@maestro1:/usr/lib/hadoop/wordcount_classes$javac-classpath/usr/lib/hadoop/hadoop-common-2.0.0-cdh4.0.1.jar:/usr/lib/hadoop/client/hadoop-mapreduce-client-core-2.0.0-cdh4.0.1.jar-d/usr/lib/hadoop/wordcount_classes/usr/lib/hadoop/wordcount_classes/wordcount.java /usr/lib/hadoop/hadoop-common-2.0.0-cdh4.0.1.jar(org/apache/hadoop/fs/Path.class): 警告:在“LimitedPrivate”类型中找不到注释方法“value()”:找不到org.apache.hadoop.classification.InterfaceAudience的类文件 /usr/lib/hadoop/wordcount\u classes/wordcount.java:14:错误:编写映射时出错:无法创建父目录 公共静态类映射扩展MapReduceBase实现映射器{ ^ 1错误 1警告,java,javac,cloudera,word-count,Java,Javac,Cloudera,Word Count,这个错误是怎么回事?我无法编译这个wordcount.java文件 人们一直在告诉我要正确设置java类路径。有人对我的做法有何评论吗?请帮助!谢谢!这 mark@maestro1:/usr/lib/hadoop/wordcount_classes$ javac -classpath /usr/lib/hadoop/hadoop-common-2.0.0-cdh4.0.1.jar:/usr/lib/hadoop/client/hadoop-mapreduce-client-core-2.0.0-

这个错误是怎么回事?我无法编译这个wordcount.java文件

人们一直在告诉我要正确设置java类路径。有人对我的做法有何评论吗?请帮助!谢谢!

mark@maestro1:/usr/lib/hadoop/wordcount_classes$ javac -classpath /usr/lib/hadoop/hadoop-common-2.0.0-cdh4.0.1.jar:/usr/lib/hadoop/client/hadoop-mapreduce-client-core-2.0.0-cdh4.0.1.jar -d /usr/lib/hadoop/wordcount_classes /usr/lib/hadoop/wordcount_classes/WordCount.java
/usr/lib/hadoop/hadoop-common-2.0.0-cdh4.0.1.jar(org/apache/hadoop/fs/Path.class):     
warning: Cannot find annotation method 'value()' in type 'LimitedPrivate': class file for org.apache.hadoop.classification.InterfaceAudience not found
/usr/lib/hadoop/wordcount_classes/WordCount.java:14: error: error while writing Map: could not create parent directories
public static class Map extends MapReduceBase implements Mapper<LongWritable, Text, Text, IntWritable> {
            ^
1 error
1 warning
指示您希望将类文件写入的位置。是否正确?我怀疑您没有在那里写入的权限,因此:

-d /usr/lib/hadoop/wordcount_classes
你能在那个目录中创建一个目录吗(提示:使用
mkdir
)?顺便说一句,我认为
/usr/lib
目录不是这样做的好地方,即使你能。我希望你在你的主目录中执行开发

/usr目录通常用于安装程序、库等,并对普通用户进行写限制。
manhier
很好地解释了Unix中使用的不同目录。

mark@maestro1:/usr/lib/hadoop/wordcount_classes$ javac -classpath /usr/lib/hadoop/hadoop-common-2.0.0-cdh4.0.1.jar:/usr/lib/hadoop/client/hadoop-mapreduce-client-core-2.0.0-cdh4.0.1.jar -d /usr/lib/hadoop/wordcount_classes /usr/lib/hadoop/wordcount_classes/WordCount.java
/usr/lib/hadoop/hadoop-common-2.0.0-cdh4.0.1.jar(org/apache/hadoop/fs/Path.class):     
warning: Cannot find annotation method 'value()' in type 'LimitedPrivate': class file for org.apache.hadoop.classification.InterfaceAudience not found
/usr/lib/hadoop/wordcount_classes/WordCount.java:14: error: error while writing Map: could not create parent directories
public static class Map extends MapReduceBase implements Mapper<LongWritable, Text, Text, IntWritable> {
            ^
1 error
1 warning
指示您希望将类文件写入的位置。是否正确?我怀疑您没有在那里写入的权限,因此:

-d /usr/lib/hadoop/wordcount_classes
你能在那个目录中创建一个目录吗(提示:使用
mkdir
)?顺便说一句,我认为
/usr/lib
目录不是这样做的好地方,即使你能。我希望你在你的主目录中执行开发


/usr目录通常用于安装程序、库等,并对普通用户进行写限制。
man-hier
对Unix中使用的不同目录给出了很好的解释。

你能发布一些代码吗…显然有错误。设置类路径:你能发布一些代码吗…显然有错误es.Set classpath:谢谢!这对无法创建父目录很有帮助!我将其更改为一个名为wordcount的新文件夹,该文件夹位于~。现在为什么我仍然收到1条警告?下面是我得到的:mark@maestro1:~$javac-classpath/usr/lib/hadoop/hadoop-common-2.0.0-cdh4.0.1.jar:/usr/lib/hadoop/client/hadoop-mapreduce-client-core-2.0.0-cdh4.0.1.jar-d~/wordcount/usr/lib/hadoop/wordcount_classes/wordcount.java/usr/lib/hadoop/hadoop/common-2.0.0-cdh4.0.1.jar(org/apache/hadoop/fs/Path.class):警告:找不到注释方法的值()'in type'LimitedPrivate':找不到org.apache.hadoop.classification.InterfaceAudience的类文件1warning@user1663321-这可能是与Hadoop更相关的另一个问题。很高兴dir的东西奏效了!这有助于无法创建父目录!我将其更改为一个名为wordcount的新文件夹,位于~.N中为什么我仍然得到1个警告?以下是我得到的:mark@maestro1:~$javac-classpath/usr/lib/hadoop-common-2.0.0-cdh4.0.1.jar:/usr/lib/hadoop/client/hadoop-mapreduce-client-core-2.0.0-cdh4.0.1.jar-d~/wordcount/usr/lib/hadoop/wordcount\u classes/wordcount.java/usr/lib/hadoop/common-2.0.0-cdh4.1.jar(org/apache/hadoop/fs/Path.class):警告:在类型“LimitedPrivate”中找不到注释方法“value()”:找不到org.apache.hadoop.classification.InterfaceAudience的类文件1warning@user1663321-这可能是另一个与Hadoop更相关的问题。很高兴dir的东西奏效了