Exception in thread "main" java.lang.NullPointerException


1、在window操作系統上,使用eclipse開發工具從hdfs分布式文件系統上下載文件報空指針異常解決方法:

log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Exception in thread "main" java.lang.NullPointerException
    at java.lang.ProcessBuilder.start(Unknown Source)
    at org.apache.hadoop.util.Shell.runCommand(Shell.java:482)
    at org.apache.hadoop.util.Shell.run(Shell.java:455)
    at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:702)
    at org.apache.hadoop.util.Shell.execCommand(Shell.java:791)
    at org.apache.hadoop.util.Shell.execCommand(Shell.java:774)
    at org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:646)
    at org.apache.hadoop.fs.FilterFileSystem.setPermission(FilterFileSystem.java:472)
    at org.apache.hadoop.fs.ChecksumFileSystem.create(ChecksumFileSystem.java:460)
    at org.apache.hadoop.fs.ChecksumFileSystem.create(ChecksumFileSystem.java:426)
    at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:906)
    at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:887)
    at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:784)
    at org.apache.hadoop.fs.FileUtil.copy(FileUtil.java:365)
    at org.apache.hadoop.fs.FileUtil.copy(FileUtil.java:338)
    at org.apache.hadoop.fs.FileUtil.copy(FileUtil.java:289)
    at org.apache.hadoop.fs.FileSystem.copyToLocalFile(FileSystem.java:1968)
    at org.apache.hadoop.fs.FileSystem.copyToLocalFile(FileSystem.java:1937)
    at org.apache.hadoop.fs.FileSystem.copyToLocalFile(FileSystem.java:1913)
    at com.bie.hadoop.crud.TextCreateNewFile.copyToLocalFile(TextCreateNewFile.java:191)
    at com.bie.hadoop.crud.TextCreateNewFile.main(TextCreateNewFile.java:239)

2、將hadoop-2.5.0-cdh5.3.6.tar.gz文件在window操作系統解壓縮,配置好環境變量。

然后驗證一下是否配置成功,操作如window+R,輸入cmd:

 

然后將如下所示的文件hadoop-common-2.2.0-bin-32.rar解壓縮,然后全部復制放到hadoop-2.5.0-cdh5.3.6.tar.gz的bin目錄下面即可:

最后重啟電腦,運行下載程序,解決問題,或者在程序中配置如下所示內容:

System.setProperty("hadoop.home.dir","D:/biexiansheng/hadoop/hadoop-2.5.0-cdh5.3.6");

/***
 * 獲取到配置信息
 * @return
 */
public static Configuration getConfiguration(){
    Configuration conf = new Configuration();
    conf.set("fs.defaultFS", "hdfs://192.168.19.131:9000");
    //重啟機器或者設置這個值
    //System.setProperty("hadoop.home.dir","D:/biexiansheng/hadoop/hadoop-2.5.0-cdh5.3.6");
    return conf;
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM