// 第一种: 2 File f = new File(this.getClass().getResource("/").getPath()); // 结果: /Users/admin/Documents/IdeaProjects/Demo/out/production/Demo System.out.println(f); f = new File(this.getClass().getResource("").getPath()); // 多返回了包名 // 结果: /Users/admin/Documents/IdeaProjects/Demo/out/production/Demo/com/company System.out.println(f); // 第二种:获取项目名 File directory = new File(""); String courseFile = null; try { courseFile = directory.getCanonicalPath(); } catch (IOException e) { e.printStackTrace(); } // 结果: /Users/admin/Documents/IdeaProjects/Demo System.out.println(courseFile); // 第三种:获取项目名 // 结果: /Users/admin/Documents/IdeaProjects/Demo System.out.println(System.getProperty("user.dir")); // 第四种:获取项目中src目录下的一级文件路径 URL path = this.getClass().getClassLoader().getResource("test.txt"); System.out.println(path.getPath());