List<String> getClassPath() ; 获取 classpath 下所有的 类信息 提示 : List 存的数据格式为 com.qikux.entity.User (包 + 类名、且使用 . 分割)
时间: 2023-05-22 15:02:59 浏览: 174
可以使用如下代码实现:
```
List<String> getClassPath() {
List<String> classNames = new ArrayList<>();
String classpath = System.getProperty("java.class.path");
String[] paths = classpath.split(System.getProperty("path.separator"));
for (String path : paths) {
File file = new File(path);
if (file.isDirectory()) {
String[] files = file.list((dir, name) -> name.endsWith(".class"));
for (String filename : files) {
String className = filename.substring(0, filename.length() - 6);
classNames.add(className.replace(File.separator, "."));
}
}
}
return classNames;
}
```
该方法首先获取 classpath,然后遍历每个路径,找到其中所有以 .class 结尾的文件,并将文件名转换成类名,加入到 List 中,最后返回这个 List。
例如,如果 classpath 中包含 com/qikux/entity/User.class 这个类,那么返回的 List 中就会包含 com.qikux.entity.User。
阅读全文