在进行 springboot 项目开发以及打包为 jar 包发布时, 可能会有两种情况下生成文件路径不一致的问题, 有一种获取路径的方法可以使两种环境下都可以正确获取到项目或jar包的根目录

举例:

String root = System.getProperty("user.dir");
String path = root +"\\out.txt";
// 这个可以得到当前jar包运行时的目录。

当项目打jar包使用java -jar xxx.jar运行时,jar会作为一个单独的文件运行,文件不会生成在jar包中。所以使用System.getProperty("user.dir");获取当前jar所运行的路径(和jar文件所在的同级目录),使用该路径作为根目录存放项目中生成的文件。

参考:

【spring】【spring boot】获取系统根路径,根目录,用于存储临时生成的文件在服务器上

SpringBoot打可执行jar运行时输出文件路径问题のI

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐