首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >virtualbox -无法从java移动共享文件夹中的文件

virtualbox -无法从java移动共享文件夹中的文件
EN

Stack Overflow用户
提问于 2018-02-28 15:34:46
回答 1查看 178关注 0票数 1

好吧,我试着用java移动一些文件.

代码语言:javascript
复制
Exception in thread "main" java.nio.file.FileSystemException: baz -> ./foo/bar/baz: Operation not permitted
    at sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
    at sun.nio.fs.UnixCopyFile.move(UnixCopyFile.java:451)
    at sun.nio.fs.UnixFileSystemProvider.move(UnixFileSystemProvider.java:262)
    at java.nio.file.Files.move(Files.java:1347)

这是一位10胜主播的库班图客人。

我可以按终端(mv baz ./foo/bar/baz)移动文件夹。java应用程序似乎没有得到通知--它可以做到这一点。

如何解决这个问题(不将内容移出共享文件夹)?

代码语言:javascript
复制
String targetDir ="./foo/bar/"
Path bazDir  = Paths.get(MyConstants.BAZ_DIR);
DirectoryRemover.remove(Paths.get(targetDir).resolve(MyConstants.BAZ_DIR)); //just to be sure
Files.move(bazDir,Paths.get(targetDir).resolve(MyConstants.BAZ_DIR), StandardCopyOption.REPLACE_EXISTING);

哪里

代码语言:javascript
复制
import java.io.IOException;
import java.nio.file.FileVisitResult;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.SimpleFileVisitor;
import java.nio.file.attribute.BasicFileAttributes;

public class DirectoryRemover {
    public static void remove(Path obstacle){
        try {
            Files.walkFileTree(obstacle, new FileWalker());
        }catch(Exception e){
            //didn't exist / already deleted, etc.
        }
    }

    static class FileWalker extends SimpleFileVisitor<Path>{
        @Override
        public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
            Files.delete(file);
            return FileVisitResult.CONTINUE;
        }

        @Override
        public FileVisitResult postVisitDirectory(Path dir, IOException exc) throws IOException {
            Files.delete(dir);
            return FileVisitResult.CONTINUE;
        }
    }

}
EN

回答 1

Stack Overflow用户

发布于 2018-11-21 21:37:28

从我所知,这是NIO中的一个实际问题。我注意到类似的问题,例如在运行在VirtualBox上的Ubuntu上使用Eclipse。

我唯一的建议是在VM中使用本地文件夹。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49033200

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档