在我们写jar的时候,通常会在运行jar的时候传入参数进入,对文件的处理的话就要出入wenj文件的路径了
但是传的时候,传绝对路径没问题,但是如果是xian相对路径的话,就要在代码中获取当前的环境路径了
通过下面的方式可以获取到当前环境的绝对路径:
public class Main {
public static void main(String[] args) {
//这是找Main.class文件的绝对路径;
//String path = Main.class.getClassLoader().getResource("").getPath();
//这是找jar包的绝对路径;
String jarWholePath = Main.class.getProtectionDomain().getCodeSource().getLocation().getFile();
try {
jarWholePath = java.net.URLDecoder.decode(jarWholePath, "UTF-8");
} catch (Exception e) {
System.out.println(e.toString());
}
String path = new File(jarWholePath).getParentFile().getAbsolutePath()+"\\";
}
}