Hadoop创建/删除文件夹出错

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.IllegalArgumentException: Wrong FS: hdfs://sandbox.hortonworks.com:8020/user/testdir, expected: file:///
    at org.apache.hadoop.fs.FileSystem.checkPath(FileSystem.java:645)
    at org.apache.hadoop.fs.RawLocalFileSystem.pathToFile(RawLocalFileSystem.java:80)
    at org.apache.hadoop.fs.RawLocalFileSystem.mkdirs(RawLocalFileSystem.java:423)
    at org.apache.hadoop.fs.ChecksumFileSystem.mkdirs(ChecksumFileSystem.java:590)
    at com.hdfs.directory.CreateDir.main(CreateDir.java:19)
在本机运行是会出现上面的错误,改成下面的代码:

package com.hdfs.directory;

import java.io.IOException;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;

public class CreateDir {

    /**
     * @param args
     * @throws IOException
     */
    public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub
        Configuration conf=new Configuration();
        Path newPath = new Path("hdfs://sandbox.hortonworks.com:8020/user/testdir");
        //FileSystem fs=FileSystem.get(conf);
        FileSystem fs = newPath.getFileSystem(conf);
        fs.mkdirs(newPath);
        fs.close();
//        FileStatus fileStatus=fs.getFileStatus(new Path("/user/long1657/20130908"));

    }

}

或者hadoop相关的配置信息,放在工程目录下:

执行上面的代码后:/user/testdir目录被成功删除:

在将hadoop相关的配置文件添加到工程中后,用下面的代码就可以成功创建文件夹:

package com.hdfs.directory;

import java.io.IOException;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;

public class CreateDirWithConf {

    /**
     * @param args
     * @throws IOException
     */
    public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub
        Configuration conf=new Configuration();

        FileSystem fs=FileSystem.get(conf);

        fs.mkdirs(new Path("hdfs://sandbox.hortonworks.com:8020/user/testdir"));
        fs.close();
//        FileStatus fileStatus=fs.getFileStatus(new Path("/user/long1657/20130908"));

    }

}
时间: 2024-10-20 01:31:05

Hadoop创建/删除文件夹出错的相关文章

在SD卡上创建/删除文件夹 使用DDMS透视图管理SD卡

在SD卡上创建和删除文件夹 基本步骤: (1):在控制台中输入adb shell命令,进入shell控制台. (2):在shell控制台中输入cd sdcard 命令,进入SD卡中. (3):在shell控制台中输入ls -al 命令,查看sd卡中包含的全部文件和文件夹. (4):在shell控制台中输入mkdir mrsoft 命令,创建一个名为mrsoft的文件夹. (5):在shell控制台中输入ls -al命令,查看SD卡中包含的全部文件和文件夹.可以看到文件夹mrsoft已经创建. (

创建、删除文件夹和文件夹里的文件

创建一个文件夹: public function index(){ if (!is_dir('d:/hl')) { mkdir('d:/hl'); }else{ echo '文件夹已经存在'; } } 创建层级文件夹: public function index(){ $path='d:/hl/a/b/c'; if (!is_dir($path)) { if (mkdir($path,0777,true)) { echo '创建文件夹成功'; }else{ echo '创建文件夹失败'; } }

iOS 创建文件夹,删除文件夹,对文件夹重命名的操作

iOS 创建文件夹,删除文件夹,对文件夹重命名的操作 by 伍雪颖 + (void)createFolder:(NSString *)folderName { NSString *imageDir = [NSString stringWithFormat:@"%@/Documents/%@", NSHomeDirectory(),folderName]; NSLog(@"HomeDir: %@",imageDir); BOOL isDir = NO; NSFileM

Python - 创建目录,切换目录,创建文件,复制文件,移动文件 ,删除文件夹及文件

# -*- coding: utf-8 -*- """ Created on Mon Jan  9 00:35:43 2017 @author-Weixin: 953558077 """ import os import shutil import time ''' shutil模块的基础功能简介 copyfile( src, dst)      从源src复制到dst中去.当然前提是目标地址是具备可写权限.抛出的异常信息为IOException

win10正式版如何创建无法删除文件夹

通常情况下,文件夹是可以随意被删除的,但是一旦文件夹被删除,那么文件夹里面的文件可能就会丢失,因此可以建立一个别人无法删除的文件夹.那么,要怎么创建无法删除的文件夹呢?此文就为大家分享win10正式版如何创建无法删除文件夹. 1.首先可以在快捷键win+r,直接打开“运行”窗口,并输入cmd命令回车. 2.接着可以在“命令提示符”窗口中,并在D盘创建一个无法删除的文件夹,命令提示符框中输入“md d:\wendang..\ ”按回车. 3.并直接在D盘,并会看到刚创建的赌钱网站了. 4.然后可以

java创建和删除文件夹及文件

//新建一个文件夹 public void newFolder(String folderPath) { try { String filePath = folderPath; File myFilePath = new File(filePath); if (!myFilePath.exists()) { myFilePath.mkdir(); } } catch (Exception e) { System.out.println("新建文件夹操作出错"); e.printStac

ios 下创建,删除文件夹的方法

NSString *imageDir = [NSString stringWithFormat:@"%@/Caches/%@", NSHomeDirectory(), dirName]; BOOL isDir = NO; NSFileManager *fileManager = [NSFileManager defaultManager]; BOOL existed = [fileManager fileExistsAtPath:imageDir isDirectory:&is

创建文件夹删除文件夹等操作

文件夹的操作 一.新建文件夹的操作 public static void creatfolder(String fileName) { File file=new File(fileName); if (file.isDirectory()) { try { file.createNewFile(); } catch (IOException e) { } }else { System.out.println("这不是一个文件夹"); } 二.删除文件夹 public static v

apache FtpClient上传下载删除文件夹及文件

/* * 文件名:FtpUtil.java * 描述:FTP操作 * 修改时间2014-08-10 */ import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.text.SimpleDateFormat; import jav