Java.nio.file.NoSuchFileException 在 docker 容器内

Java.nio.file.NoSuchFileException within docker container

我创建了一个创建文件的应用程序。该应用程序在 intellij 中工作,当我将其导出为 jar 文件时。但是,当我从中创建 & 运行 一个 docker 容器时,我得到一个 Java.nio.file.NoSuchFileException.

这是我的 docker 文件:

FROM openjdk:8-jdk-alpine
ADD ./initializr.jar initializr.jar
EXPOSE 8089
ENTRYPOINT ["java", "-jar", "initializr.jar"]

这是我正在使用的目录

private final String path = System.getProperty("user.dir") + "\generatedFiles\";

通常它会创建 generatedFiles 文件夹,如果它丢失所以我猜 Systen.getProperty 不起作用?

您可以进入 docker 容器并检查您要查找的文件夹是否存在。你可以通过 docker exec -it container_name /bin/bash 来完成。 另外我认为使用 File.separator 的 fs 分隔符更好。

Unix 使用“/”作为路径分隔符,尝试使用

private final String path = System.getProperty("user.dir") + File.separator + "generatedFiles" + File.separator;