在很多的实际场景中,我们需要得到某个包名下面所有的类,
包括我们自己在src里写的java类和一些第三方提供的jar包里的类,那么怎么来实现呢?
今天带大家来完成这件事。
src下面的类如何获取:
首先,比较简单的是得到我们自己写的类,我们先来完成这个,
项目的结构图如下:
我故意创建了这么个比较复杂的项目结构,现在我们就来获取com.baibin包下所有的类,并且打印他们,代码如下:
import org.junit.Test;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class Main {
List<String> classPaths = new ArrayList<String>();
@Test
public void searchClass() throws ClassNotFoundException {
//包名
String basePack = "com.baibin";
//先把包名转换为路径,首先得到项目的classpath
String classpath = Main.class.getResource("/").getPath();
//然后把我们的包名basPach转换为路径名
basePack = basePack.replace(".", File.separator);
//然后把classpath和bas