common_helper/src/main/java/com/xiongyingqi/util/FileSystemUtils.java
public static void copyRecursively(File src, File dest) throws IOException {
        Assert.isTrue(src != null && (src.isDirectory() || src.isFile()), "Source File must denote a directory or file");
        Assert.notNull(dest, "Destination File must not be null");
        doCopyRecursively(src, dest);
    }
public static void copyRecursively(File src, File dest) throws IOException {
        Assert.isTrue(src != null && (src.isDirectory() || src.isFile()), "Source File must denote a directory or file");
        Assert.notNull(dest, "Destination File must not be null");
        doCopyRecursively(src, dest);
    }
public static void copyRecursively ( File src , File dest ) throws IOException { Assert . isTrue ( src != null && ( src . isDirectory ( ) || src . isFile ( ) ) , "Source File must denote a directory or file" ) ; Assert . notNull ( dest , "Destination File must not be null" ) ; doCopyRecursively ( src , dest ) ; }
Recursively copy the contents of the {@code src} file/directory
to the {@code dest} file/directory.

@param src  the source directory
@param dest the destination directory
@throws java.io.IOException in the case of I/O errors
Recursively copy the contents of the { @code src } file / directory to the { @code dest } file / directory .