Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以加载外部项目';在运行时使用反射或任何其他方法创建java类_Java_Reflection - Fatal编程技术网

是否可以加载外部项目';在运行时使用反射或任何其他方法创建java类

是否可以加载外部项目';在运行时使用反射或任何其他方法创建java类,java,reflection,Java,Reflection,我可以使用java反射api或org.reflection api在运行时在不在类路径中的外部项目中加载java类吗?是否有人可以回答我是否有其他方法在运行时加载扩展java类是的,您可以使用反射api加载不在实际项目中或类路径下的类。 例如,这适用于URLClassLoader 要按照注释中的要求加载多个文件,可以在目录中的文件上进行迭代。对于每个文件,都可以使用类加载器 您可以使用file类获取目录的文件。例如: Path p = Paths.get(""); File f = p.toFi

我可以使用java反射api或org.reflection api在运行时在不在类路径中的外部项目中加载java类吗?是否有人可以回答我是否有其他方法在运行时加载扩展java类

是的,您可以使用反射api加载不在实际项目中或类路径下的类。 例如,这适用于
URLClassLoader

要按照注释中的要求加载多个文件,可以在目录中的文件上进行迭代。对于每个文件,都可以使用类加载器

您可以使用file类获取目录的文件。例如:

Path p = Paths.get("");
File f = p.toFile();
String[] files = f.toAbsoluteFile().list();

然后就有了一个文件/目录的字符串数组。如果您在包含类文件的目录中,您只需迭代数组,然后通过类加载器逐个加载它们

有URLClassLoader;可以使用文件uri:“file:/…jar”。更面向插件的是带有模块和定义生命周期的OSGi系统。下面是一个示例,我们如何在应用程序中使用URLClassLoader动态加载插件:我已经这样做了,但我的应用程序希望在包中加载java类,并希望读取特定的。在那个java类中的注释,我如何才能实现呢,cz jar文件包含.class文件?很抱歉,我真的不明白您的实现应该做什么。或者换一种说法,它应该如何处理注释。好的,让我知道,如何使用反射在一个jar中加载多个类。Cz for name()方法只取一个类名。要获得更具体的答案,请发布一些代码