1

次のようなコードで、内部的に HDFS の場所に実行している jar をコピーしようとしています。

MyClass.class.getProtectionDomain().getCodeSource().getLocation().getPath()

クラスパスを正しくエクスポートすると:

export $HADOOP_CLASSPATH=/path/to/jar.jar

次に、jar を実行している場所から正しいパスを取得します。ただし、jar の名前を間違って指定すると、次のようになります。

export $HADOOP_CLASSPATH=/path/to/jar1.jar

次に、実行前に jar を展開する tmp フォルダーへのパスを取得します。

なぜこれが起こっているのかを理解するのを手伝ってくれる人はいますか?

ありがとう

4

0 に答える 0