使用JobConf.getJar()
给了我:
/tmp/hadoop-yarn/staging/vagrant/.staging/job_1440651592962_0002/job.jar
原来是mapreduce.jobtracker.staging.root.dir
的HDFS路径。
使用find
我发现它实际存储在appcache中:
/vagrant/target/tmp/nm-local-dir/usercache/vagrant/appcache/
application_1440651592962_0002/container_1440651592962_0002_01_000001/job.jar
application_1440651592962_0002/filecache/10/job.jar
application_1440651592962_0002/filecache/10/job.jar/job.jar
哪个来自yarn.nodemanager.local-dirs
是否有任何API序列可以让我进入正常磁盘上的jar?