在java开发中,有些资源我们打包在jar的资源文件里面,但是在IDE调试时getResources()并不能获取到资源文件,为了方便调试。我们可以通过判断当前运行的启动方式是IDE 调用class还是集成在jar库中。
实现方式
public static<T> boolean isStartupFromJar(Class<T> clazz) {
File file = new File(clazz.getProtectionDomain().getCodeSource().getLocation().getPath());
return file.isFile();
}