hadoopでmap Reduceを実行するためにこのスクリプトを実行しようとしています。ただし、このスクリプトを実行すると、スクリーンショットに添付されたエラーが表示されます。スクリプト:
rm -rf /home/sk/デスクトップ/abc/wordcountc/
rm /home/sk/Desktop/abc/wordcountj.jar
mkdir /home/sk/Desktop/abc/wordcountc/
sudo chmod 777 /home/sk/Desktop/abc/wordcountc
CD /usr/local/Hadoop
dfs.shを起動
Yarn.shを起動
平和の定義
bin/hdfs dfs -rm -r -skipTrash /ユーザー
bin/hdfs dfs -rm -r -skipTrash /opt
bin/hdfs dfs -rm -r -skipTrash /opt2
bin/hdfs dfs -mkdir /ユーザー
bin/hdfs dfs -put '/home/sk/Desktop/input' /user
CD /ホーム/sk/デスクトップ/abc/
javac -classpath /usr/local/hadoop/share/hadoop/common/hadoop-common-2.7.0.jar:/usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.7.0 .jar:/usr/local/hadoop/share/hadoop/common/lib/commons-cli-1.2.jar -d /home/sk/Desktop/abc*.java
mv /home/sk/Desktop/abc/*.class /home/sk/Desktop/abc/wordcountc/
CD /ホーム/sk/デスクトップ/abc
jar -cvf wordcountj.jar -C /home/sk/Desktop/abc/wordcountc 。
CD /usr/local/Hadoop
bin/hadoop jar /home/sk/Desktop/abc/wordcountj.jar OutDegree /user/input 出力wc
ベストアンサー1
フラグは引数をディレクトリパスとして使用します-d
。javac
オラクルは言うこのロゴ情報:
クラスファイルの宛先ディレクトリを設定します。ディレクトリはすでに存在している必要があり、
javac
作成されません。クラスがパッケージの一部である場合は、パッケージjavac
名を反映するサブディレクトリにクラスファイルを配置し、必要に応じてディレクトリを作成します。
ただし、指定したパラメータは/home/sk/Desktop/abc*.java
まったくディレクトリパスのようには見えません。
そんな意味でしたか/home/sk/Desktop/
?それともこのロゴが必要ですか-d
?これは実行されないかもしれません。これはabc*.java
コンパイルしたいJavaソースファイルです。
またはあなたが欲しい-d /home/sk/Desktop/ /home/sk/Desktop/abc*.java
。