paip兼容windows与linux的java类根目录路径的方法 1.只有 pathx.class.getResource("")或者pathx.class.getResource(".")才是在linux,widdows下获取的路径一致。。都是class的实现路径..不过没方法获得root path.. 其他的都不一致---widdows得到class root, linux却是/root/。。。 比如class.getResource("/")以及class.getClassLoader().getResource 2.只好从中截取路径了。。 但是在com下的路径截取却得到pinyin*.jar的奇怪路径,估计java的bug。。com.attilax.io这个路径走好着了. public static String classPath() { //URL u=new URL() //jeoig linux hamyar cheng leig ***.jar! le .. // return new File( classpathGetter.class.getResource("").getPath()).getParent() ; String path = pathx.class.getResource("").getPath(); int index=path.lastIndexOf("/"); String path_sub=path.substring(0, index-15); return path_sub; } 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog.csdn.net/attilax ///mmseg中的获取路径 RL url = Dictionary.class.getClassLoader().getResource("data"); 却是可以的。。 但是使用 getResource(""); 却不行,得到的/root/ in linux.. getResource("com")也很离谱,居然是pinyin*.jar 在内jar 还是classes 的类都是一样的效果... public class pathx { /**linux * file:/root/ file:/root/ null file:/root/ -------1------- file:/root/ null file:/root/ -------2------- file:/root/ null file:/root/ ---- file:/imServer/WebRoot/WEB-INF/classes/com/attilax/io/ file:/root/ file:/imServer/WebRoot/WEB-INF/classes/com/attilax/io/ ------//windows file:/D:/workspace/imServer/WebRoot/WEB-INF/classes/ null file:/D:/workspace/imServer/WebRoot/WEB-INF/classes/ -------1------- file:/D:/workspace/imServer/WebRoot/WEB-INF/classes/ null file:/D:/workspace/imServer/WebRoot/WEB-INF/classes/ -------2------- file:/D:/workspace/imServer/WebRoot/WEB-INF/classes/ null file:/D:/workspace/imServer/WebRoot/WEB-INF/classes/ ---- file:/D:/workspace/imServer/WebRoot/WEB-INF/classes/com/attilax/io/ file:/D:/workspace/imServer/WebRoot/WEB-INF/classes/ file:/D:/workspace/imServer/WebRoot/WEB-INF/classes/com/attilax/io/ * @param args */ public static void main(String[] args) { System.out.println(Thread.currentThread().getContextClassLoader().getResource("")); System.out.println(Thread.currentThread().getContextClassLoader().getResource("/")); System.out.println(Thread.currentThread().getContextClassLoader().getResource(".")); System.out.println("-------1-------"); System.out.println(pathx.class.getClassLoader().getResource("")); System.out.println(pathx.class.getClassLoader().getResource("/")); System.out.println(pathx.class.getClassLoader().getResource(".")); System.out.println("-------2-------"); System.out.println(ClassLoader.getSystemResource("")); System.out.println(ClassLoader.getSystemResource("/")); System.out.println(ClassLoader.getSystemResource(".")); System.out.println("----"); System.out.println(pathx.class.getResource("")); System.out.println(pathx.class.getResource("/")); System.out.println(pathx.class.getResource(".")); System.out.println(pathx.class.getResource("").getPath()); } }
java 访问linux 根目录_paip兼容windows与linux的java类根目录路径的方法
最新推荐文章于 2021-11-08 18:27:47 发布