Had the same problem. Just check for null and use a different call
instead:
Path[] files = DistributedCache.getLocalCacheFiles
(hfp.getJobConf());
// if we run locall getLocalCacheFiles doesn't work - need to
use local versions. Don't ask me why...
if (files == null) {
URI[] uris = DistributedCache.getCacheFiles(hfp.getJobConf
());
files = new Path[uris.length];
int i = 0;
for(URI uri : uris) {
files[i++] = new Path(uri.getPath());