在进行 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文件所在的同级目录),使用该路径作为根目录存放项目中生成的文件。
参考: