SpringBoot项⽬jar发布后如何获取jar包所在⽬录路径⽬录
SpringBoot项⽬jar发布获取jar包所在⽬录路径
SpringBoot打可执⾏jar运⾏时输出⽂件路径问题
SpringBoot项⽬jar发布获取jar包所在⽬录路径
ApplicationHome ah = new ApplicationHome(getClass());
File file = ah.getSource();
System.out.ParentFile().toString());
说明:
该种⽅法获取jar包所在路径好处,会根据当前是本地测试环境还是发布到⽣产环境准确获取jar所在路径。SpringBoot打可执⾏jar运⾏时输出⽂件路径问题
Ubuntu系统环境下,项⽬打jar包形式运⾏⼯程⽣成⽂件以及获取该⽂件的路径设置问题
1.使⽤前辈项⽬中如下⽅法在打war包和本地运⾏项⽬时能够获取⽬录。springframework jar包导入
IDEA中获取的是:/home/xxx/xxx/(projectName)/target/classes;
若使⽤在jar包中获取的是:/home/xxx/BOOT-INF/classes
String path = (String.valueOf(Thread.currentThread().getContextClassLoader().getResource(""))).replaceAll("file:/", "").replaceAll("%20", " ").trim(); 2.当项⽬打jar包使⽤java -jar xxx.jar运⾏时,jar会作为⼀个单独的⽂件运⾏,⽂件不会⽣成在jar包中。
所以使⽤Property("user.dir");获取当前jar所运⾏的路径(和jar⽂件所在的同级⽬录),使⽤该路径作为根⽬录存放项⽬中⽣成的⽂件。
以上为个⼈经验,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论