• 使用HDFS java api 创建文件出错。


    //创建文件核心代码	
    public static void createNewHDFSFile(String toCreateFilePath, String content) throws IOException
    	{
    		Configuration config = new Configuration();
    		config.set("hadoop.job.ugi", "Administrator,supergroup");
    		FileSystem hdfs = FileSystem.get(config);
    		
    		FSDataOutputStream os = hdfs.create(new Path(toCreateFilePath));
    
    		os.write(content.getBytes("UTF-8"));
    		
    		os.close();
    		
    		hdfs.close();
    	}
    

    使用: createNewHDFSFile("/tmp/create2.c", "hello");

    错误信息: 

    Exception in thread "main" java.io.IOException: Cannot run program "chmod": CreateProcess error=2, ?????????
    	at java.lang.ProcessBuilder.start(ProcessBuilder.java:459)
    	at org.apache.hadoop.util.Shell.runCommand(Shell.java:149)
    	at org.apache.hadoop.util.Shell.run(Shell.java:134)
    	at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:286)
    	at org.apache.hadoop.util.Shell.execCommand(Shell.java:354)
    	at org.apache.hadoop.util.Shell.execCommand(Shell.java:337)
    	at org.apache.hadoop.fs.RawLocalFileSystem.execCommand(RawLocalFileSystem.java:481)
    	at org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:473)
    	at org.apache.hadoop.fs.FilterFileSystem.setPermission(FilterFileSystem.java:280)
    	at org.apache.hadoop.fs.ChecksumFileSystem.create(ChecksumFileSystem.java:372)
    	at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:484)
    	at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:465)
    	at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:372)
    	at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:364)
    	at com.geoway.hadoop.example.HadoopFSOperations.createNewHDFSFile(HadoopFSOperations.java:54)
    	at com.geoway.hadoop.example.HadoopFSOperations.main(HadoopFSOperations.java:15)
    Caused by: java.io.IOException: CreateProcess error=2, ?????????
    	at java.lang.ProcessImpl.create(Native Method)
    	at java.lang.ProcessImpl.<init>(ProcessImpl.java:81)
    	at java.lang.ProcessImpl.start(ProcessImpl.java:30)
    	at java.lang.ProcessBuilder.start(ProcessBuilder.java:452)
    	... 15 more
    

     不知道什么原因 ,哪位能告诉我?

  • 相关阅读:
    python 获取当前文件路径和上级路径
    软件测试如何优雅的拒绝offer?
    软件测试面试题04Linux常用命令
    测试工程师刚入职如何快速熟悉需求并输出测试用例?
    软件测试面试题05接口测试中如何校验结果是否正确?
    window10 清空wifi连接记录
    软件测试面试题02软件测试流程?
    软件测试面试题06没有接口文档,如何做接口测试?
    selenium 元素定位
    软件测试面试题01mysql 与redis 的区别?
  • 原文地址:https://www.cnblogs.com/likehua/p/2552586.html
Copyright © 2020-2023  润新知