[ 经过试验,不管是否是 Jar 包,不管是否是 Tomcat 部署,以下三个方法均可实现。 package test; public class MyPath { public static
在eclipse或者其它.class文件没有被打包的情况下,使用如下语句可以获得.class文件的绝对路径:
[今天找了半天的毛病 关于java的一个写入记事本的小程序 封装成jar包后 因为我的机器上有运行环境 所以双击 就能在jar包的所在位置执行 并且� ...]
String classFilePath = clazz.class.getResource("").getPath();
当.class文件被打进jar包之后,上面这条语句就要报错了。这时你能做的就是去获取.class文件所在的jar的绝对路径:
String jarFilePath = clazz.class.getProtectionDomain().getCodeSource().getLocation().getFile();
// URL Decoding
jarFilePath = java.net.URLDecoder.decode(jarFilePath, "UTF-8");
[ /** * 获取工程所在目录 * @return * @throws UnsupportedEncodingException */ private static String getProjectPath() throws UnsupportedEncodingException