您正在查看: 编程语言 分类下的文章

javac -cp 指定多个classpath

javac -classpath 可以指定类路径 来编译java文件
比如
javac -classpath servlet-api.jar **.java 来编译某个java文件

要是需要指定多个路径呢?

答案是用分号 : 隔开

linux
比如:
javac -classpath /home/hadoop/hadoop/share/hadoop/common/hadoop-common-2.2.0.jar:/home/hadoop/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.2.0.jar Min*.java

package org.apache.hadoop.io does not exist

执行java程序时要先编译成class文件,才能用hadoop命令,但是编译的时候会有如

package org.apache.hadoop.conf does not exist
package org.apache.hadoop.fs does not exist
package org.apache.hadoop.io does not exist
import org.apache.hadoop.io.IOUtils;

解决办法是:

这是一个纯java问题啦,具体解决办法有:

javac -classpath "/home/hadoop/hadoop/share/hadoop/common/hadoop-common-2.2.0.jar"  FileSystemCat.java 

或者

export CLASSPATH=.:/home/hadoop/hadoop/share/hadoop/common/hadoop-common-2.2.0.jar:$CLASSPATH

Hadoop启动报Error: JAVA_HOME is not set and could not be found解决办法

Hadoop安装完后,启动时报Error: JAVA_HOME is not set and could not be found.

解决办法:

修改/etc/hadoop/hadoop-env.sh中设JAVA_HOME。

应当使用绝对路径。

export JAVA_HOME=$JAVA_HOME //错误,原来就这样的 不该就报错

export JAVA_HOME=/usr/java/jdk1.6.0_45 //正确,应该这么改