Java 抛出 java.nio.file.NoSuchFileException,但文件存在

Java throws java.nio.file.NoSuchFileException, but file exists

我是 运行 Spring REST 应用程序,位于 docker 容器中。我在 Spring 控制器中有一个用于保存图像的函数和一个用于读取图像的函数。保存功能正常,但我对读取它们的功能有疑问:

public byte[] getByteArray(String fileName) {
    try {
        File f  = new File("/upload/" + fileName);
        return Files.readAllBytes(f.toPath());
    } catch (IOException e) {
        e.printStackTrace(); // this is for testing
        return null;
    }
}

但是在我使用上面的函数之后我得到了这个错误java.nio.file.NoSuchFileException: /upload/test.png。我检查了这个文件存在于这个目录中。 Java 看不到此文件的原因可能是什么?

java 进程很可能无法访问您的 /upload 目录。目录具有访问权限、所有者和组。拥有者一套,组一套,其余一套。