Home | About | Sematext search-lucene.com search-hadoop.com
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB
 Search Hadoop and all its subprojects:

Switch to Threaded View
MapReduce >> mail # user >> About LocalResource


Copy link to this message
-
Re: About LocalResource
A jar and a the directory a jar is in are not the same things from the class paths perspective.  ./* only picks up .jar files in the current directory. $PWD is the same as ./ and does not pick up any jars in the current directory, instead it looks for .class files and other resources that are relative to the current working directory. This is pure java and has nothing to do with Hadoop specifically.

--Bobby

From: 郭杰 <[EMAIL PROTECTED]<mailto:[EMAIL PROTECTED]>>
Reply-To: "[EMAIL PROTECTED]<mailto:[EMAIL PROTECTED]>" <[EMAIL PROTECTED]<mailto:[EMAIL PROTECTED]>>
Date: Monday, April 1, 2013 1:26 AM
To: "[EMAIL PROTECTED]<mailto:[EMAIL PROTECTED]>" <[EMAIL PROTECTED]<mailto:[EMAIL PROTECTED]>>
Subject: About LocalResource

Hi,

  I wrote a yarn application with two LocalResource, AppMaster.jar and log4j.properties in hadoop-2.0.3-alpha.

 After several tries, I found I must set both $PWD and ./* in my CLASSPATH  environment  params to load mainclass and log4j.properties. Since yarn has created symlinks about two LocalResource, in my mind only './*' will be ok.  Why did this happen?

btw, I picked a part of launch_container script to figure out why here.

export PWD="/var/data/hadoop/hadoop-2.0.3-alpha/nm/usercache/guojie/appcache/application_1364315005746_0011/
ln -sf "/var/data/hadoop/hadoop-2.0.3-alpha/nm/usercache/guojie/appcache/application_1364315005746_0011/filecache/-1997165377357121547/log4j.properties" "log4j.properties"
ln -sf "/var/data/hadoop/hadoop-2.0.3-alpha/nm/usercache/guojie/appcache/application_1364315005746_0011/filecache/-4433130098352976813/AppMaster.jar" "AppMaster.jar"
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB