Solución a errores informados por la ejecución local del programa MapReduce en Windows

Solución a errores informados por la ejecución local del programa MapReduce en Windows

1. Descripción del problema

 En el sistema Windows, el programa MapReduce se ejecuta localmente y se informa de un error:

Exception in thread "main" java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z
	at org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Native Method)
	at org.apache.hadoop.io.nativeio.NativeIO$Windows.access(NativeIO.java:606)

2. Solución

 Copie el código fuente org.apache.hadoop.io.nativeio.NativeIOen el proyecto, preste atención al nombre del paquete y modifique el public static boolean access(String path, AccessRight desiredAccess) throws IOExceptionmétodo de la siguiente manera:

public static boolean access(String path, AccessRight desiredAccess)
    throws IOException {
    
    
    String os = System.getProperty("os.name");
    return os.contains("Windows") || access0(path, desiredAccess.accessRight());
}

Supongo que te gusta

Origin blog.csdn.net/adsl624153/article/details/100069911
Recomendado
Clasificación