Сбой FileUtils.copyDirectory с удаленным файлом размером более 7 мегабайт - PullRequest
0 голосов
/ 05 июля 2019

FileUtils.copyDirectory завершается ошибкой с удаленным файлом размером более 7 мегабайт

Импорт:

import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;

Код:

String source = fm_dirIn;
File srcDir = new File(source);

// The destination directory to copy to. This directory
// doesn't exists and will be created during the copy
// directory process.
String destination = fm_dirOut;
File destDir = new File(destination);

try {
    // Copy source directory into destination directory
    // including its child directories and files. When
    // the destination directory is not exists it will
    // be created. This copy process also preserve the
    // date information of the file.
    FileUtils.copyDirectory(srcDir, destDir);
    return true
} catch (IOException e) {
    'Erreur : ' + e.printStackTrace();
}

Результат

Ошибка: значение NULL и скопированных файлов списка останавливается на этом файле на 7040 КБ (это 31944 КБ)

printStackTrace:

Текущая трассировка стека: java.io.IOException: ошибка невмешательства в исходное состояние в sun.nio.ch.FileDispatcherImpl.pwrite0 (собственный метод) в sun.nio.ch.FileDispatcherImpl.pwrite (неизвестный источник) в sun.nio.ch.IOUtil.writeFromNativeBuffersun.nio.ch.IOUtil.write (неизвестный источник) в sun.nio.ch.FileChannelImpl.writeInternal (неизвестный источник) в sun.nio.ch.FileChannelImpl.write (неизвестный источник) в sun.nio.ch.FileChannelImpl.TransferFromFileChannel (неизвестный источник) в sun.nio.ch.FileChannelImpl.transferFrom (неизвестный источник) в org.apache.commons.io.FileUtils.doCopyFile (FileUtils.java:1131) в org.apache.commons.io.FileUtils.doCopyDirectory(FileUtils.java:1424) на сайте org.apache.commons.io.FileUtils.copyDirectory (FileUtils.java:1366) в org.apache.commons.io.FileUtils.copyDirectory (FileUtils.java:1246) в org.apache.commons.io.FileUtils.copyDirectory (FileUtils.java:1215) в org.apache.commons.io.FileUtils $ copyDirectory.call (Неизвестный источник) по адресу org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall (CallSiteArray.java:45) по адресу org.codehaus.groovy.runtime.callsite.ite.CallCiteSite.вызов (AbstractCallSite.java:108) в org.codehaus.groovy.runtime.callsite.AbstractCallSite.call (AbstractCallSite.java:120) в Script1.run (Script1.groovy: 27) в groovy.lang.GroovyShell.evaluate (Groovy:163) в com.prosc.beanshell.BeanShellPlugin.EvaluateGroovy (BeanShellPlugin.java:603) в sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) в sun.reflect.NativeMethodAccessorImpl.invoke (известный источник) в sun.reflect.DelegatingMethodAccessorImpl.invoke (неизвестный источник) в java.lang.reflect.Method.invoke (неизвестный источник) в com.prosc.fmkit.StaticFunction.invoke (StaticFunction.java:231) в com.prosc.fmkit.Plugin.invokeFunction (Plugin.java:339) в com.prosc.fmkit.RegisterablePlugin.invokeFunction (RegisterablePlugin.java:146) в com.prosc.fmkit.Plugin.invokeFunctionNoErrors (Plugin.java:320)prosc.fmkit.PluginBridge $ 3.run (PluginBridge.java:1132) в com.prosc.fmkit.PluginBridge $ 5.run (PluginBridge.java:1234) в java.awt.event.InvocationEvent.dispatch (Неизвестный источник) в Java.awt.EventQueue.dispatchEventImpl (неизвестный источник) на java.awt.EventQueue.access $ 500 (неизвестный источник) на java.awt.EventQueue $ 3.run (неизвестный источник) на java.awt.EventQueue $ 3.run (неизвестный источник) на java.security.AccessController.doPrivileged (собственный метод) в java.security.ProtectionDomain $ JavaSecurityAccessImpl.doIntersectionPrivilege (неизвестный источник) в java.awt.EventQueue.dispatchEvent (неизвестный источник) в java.awt.EventDispatchThread.pumpOneEventForFilters (неизвестный источник) в java.awt.EventDispatchThread.pumpEventsForFilter (неизвестный источник) в java.awt.EventDispatchThread.pumpEventsForHierarchy (неизвестный источник) в java.awtawt.EventDispatchThread.pumpEvents (неизвестный источник) на java.awt.EventDispatchThread.run (неизвестный источник)

...