File file = new File("data.txt"); // 相對路徑
FileInputStream fis = new FileInputStream(file); // FileNotFoundException相對路徑基於「當前工作目錄」(CWD),IDE 運行時 CWD 通常是專案根目錄,打包後可能是 JAR 所在目錄或系統臨時目錄,導致路徑解析不一致。
new File("/opt/app/data/data.txt")(部署時固定)。InputStream is = MyClass.class.getResourceAsStream("/data.txt");
// 或
InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream("data.txt");@Value("${data.path}") 注入路徑,部署時通過環境變量指定。System.out.println("CWD = " + new File(".").getAbsolutePath());
System.out.println("File absolute = " + file.getAbsolutePath());
System.out.println("Exists = " + file.exists());