获取项目路径

获取项目路径

public void showURL() throws IOException {

        // 第一种:获取类加载的根路径 D:gitdaotiedaotie	argetclasses
        File f = new File(this.getClass().getResource("/").getPath());
        System.out.println("path1: " + f);

        // 获取当前类的所在工程路径; 如果不加“/” 获取当前类的加载目录 D:gitdaotiedaotie	argetclassesmy
        File f2 = new File(this.getClass().getResource("").getPath());
        System.out.println("path1: " + f2);

        // 第二种:获取项目路径 D:gitdaotiedaotie
        File directory = new File("");// 参数为空
        String courseFile = directory.getCanonicalPath();
        System.out.println("path2: " + courseFile);

        // 第三种: file:/D:/git/daotie/daotie/target/classes/
        URL xmlpath = this.getClass().getClassLoader().getResource("");
        System.out.println("path3: " + xmlpath);

        // 第四种: D:gitdaotiedaotie
        System.out.println("path4:" + System.getProperty("user.dir"));
        /*
         * --结果: C:Documents and SettingsAdministratorworkspaceprojectName
         * --获取当前工程路径
         */
        // 第五种: 获取所有的类路径 包括jar包的路径
        System.out.println("path5: " + System.getProperty("java.class.path").split(";")[0]);

        // 第六种: 获取项目路径 D:/git/daotie/daotie.target/classes/
        // System.out.println("path6: "+Thread.currentThread().getContentClassLoader().getResource("").getPath());

        // 第七种 表示到项目的根目录下, 要是想到目录下的子文件夹,修改"/"即可
        // String path7 = request.getSession().getServletContext().getRealPath("/"));
        // System.out.pringln("path7: "+path7);
    }

main测试

public static void main(String[] args) {
    try {
       showURLTest show = new showURLTest();
       show.showURL();
    } catch (Exception e) {
            // TODO: handle exception
    }
}
原文地址:https://www.cnblogs.com/mjtabu/p/13175828.html