无法解析为绝对文件路径,因为它不驻留在文件系统中

Cannot be resolved to absolute file path because it does not reside in the file system

我的代码:

XWPFDocument doc = new XWPFDocument(OPCPackage.open(ResourceUtils.getFile("classpath:assets/OPTIONS_" + jubilar1.getJubiLanguage().toUpperCase() + ".docx")));

我已经尝试使用 .getFile()、extractJarFileFromURL 或 resource.getInputStream() 来代替,但这一切都不起作用。当我打包我的项目并将其 运行 作为 jar 文件并尝试打开以下文件时,它总是 returns 以下消息。

错误:

java.io.FileNotFoundException: class path resource [assets/OPTIONS_DE. docx] cannot be resolved to absolute file path because it does not reside in the file system: jar:file:/home/tkf6y/IdeaProjects/hrapps/backend/target/backend-3.0.0.jar!/BOOT-INF/classes!/assets/OPTIONS_EN.docx

所以是的,这就是问题所在,因为您现在正在按照我的建议使用 InputStream。问题是(而且一直是)getFile 的东西。我建议做的是不要使用你现在拥有的东西,而是做一个新的 ClassPathResource(your location).getInputStream()) 相反,它更容易,甚至使用 ResourceLoader(一个 Spring 接口,你可以inject) 然后使用你有的路径再次使用 getInputStream()。 –