2
У меня есть следующая java-программа, которая возвращает определенные классы из каталога. Я хочу найти имена пакетов для этих классов. Как я могу это сделать? любой код будет полезным.Получение имен пакетов из классов
import java.util.*;
import java.io.*;
public class CreateTestPackage
{
public void execute()
{
List<Class> findClasses(File directory) throws ClassNotFoundException
{
List<Class> classes = new ArrayList<Class>();
if (!directory.exists())
{
return classes;
}
File[] files = directory.listFiles(new FilenameFilter()
{
public boolean accept(File dir, String name)
{
return name.matches("test.*\\.class");
}
});
for (File file : files)
{
if (file.isDirectory())
{
assert !file.getName().contains(".");
classes.addAll(findClasses(file));
}
else if (file.getName().endsWith(".class"))
{
classes.add(Class.forName(file.getName().substring(0, file.getName().length() - 6)));
}
}
return classes;
}
}
}
Спасибо Mike Я получаю эту ошибку синтаксиса ошибку, вставить ";" для завершения LocalVariableDeclarationStatement по адресу Список findClasses (Каталог файлов) throws ClassNotFoundException –
Jony
Codenotguru просто добавьте «;» в конце "c.getPackage(). getName()" – Khanser
Что сказал Хансер ... – Mike