hadoop“无法找到或加载主类com.sun.tools.javac.main”

dy2hfwbg  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(540)

在我的问题以副本形式结束之前:我已经查看了所有其他相关问题,但提供的解决方案对我不起作用,可能是因为我使用的是cygwin,而不是unix。
我在这里试用图图里亚尔。每当我运行命令时(在c:/hadoop中) bin/hadoop com.sun.tools.javac.Main WordCount.java ,我得到错误 Could not find or load main class com.sun.tools.javac.Main .
我的 Java_Home 变量设置为: c:/PROGRA~1/Java/jdk1.7.0_17 ( echo $JAVA_HOME 证实了这一点),我的 HADOOP_CLASSPATHc:/PROGRA~1/Java/jdk1.7.0_17/lib/tools.jar . javac -version 确认我使用的是jdk1.7.0\u 17。
有人知道问题出在哪里吗?

rmbxnbpk

rmbxnbpk1#

windows和unix/linux工具的区别之一是处理 PATH 以及 CLASSPATH 变量,其中在windows中,支持 C:\... 路径表示法,中的分隔符 PATH 以及 CLASSPATH 是分号 ; ,在linux上 : 在文件路径是非常罕见的,分隔符是 : .
当您在cygwin上运行时,您使用的是unix/linux版本的hadoop(可能还有java)。这意味着它可能在期待 CLASSPATH 冒号( : )分隔的。
因此,应该使用给定路径的“unix”版本,在cygwin中,通过替换 c:/cygdrive/c .

相关问题