springboot项目打成jar包发布后,获取jar包当前所在路径。windows与Linux通用。
获取代码:String jar_parent = new File(ResourceUtils.getURL("classpath:").getPath()).getParentFile().getParentFile().getParent();我的springboot项目名叫springcloud-eureka-servicesupport是用idea构建的(以module构建)。...
获取代码:
String jar_parent = new File(ResourceUtils.getURL("classpath:").getPath()).getParentFile().getParentFile().getParent();
我的springboot项目名叫springcloud-eureka-servicesupport是用idea构建的(以module构建)。
项目放在C:\Users\anxiaopei\springcloud 下。
1.windows下,使用idea直接运行项目时:
当使用idea发布springboot项目直接运行,而不是打包为jar运行的时候,运行上面的代码获取的是项目的位置:
首先找到项目运行的目录 target:
target绝对路径:C:\Users\anxiaopei\springcloud\springcloud-eureka-servicesupport
运行上面代码获得路径:C:\Users\anxiaopei\springcloud
因此在不打为jar包运行的时候,获取的是项目的根路径。
2.Linux下,打为jar包后,java -jar 运行springboot jar包项目时:
我的Springboot项目打为jar包后,linux系统中 jar存放的目录:
运行上面代码:得到的结果是:file:/usr/CouldComment
由此可见代码运行正常
获取这个路径我是用来得到同路径下的,存放于jar包之外的静态资源,freemarker的模板资源,一些系统配置需要jar包存放路径。
此代码能用的留个赞,不能用的反馈一下问题。_(:з」∠)_
更多推荐
所有评论(0)