gpt4 book ai didi

java - 如果包含来自另一个目录的包,如何识别类

转载 作者:行者123 更新时间:2023-12-01 11:57:20 27 4
gpt4 key购买 nike

来自there ,我使用类加载器从其他目录识别类

File dir=new File ("D:\\dirclass")
fulldir = new File (dir+"\\myclass");
filename = new StringTokenizer(fulldir.getName(), ".").nextToken();
URL[] checkclass =
{
dir.toURI().toURL()
};
URLClassLoader urlcl = new URLClassLoader(checkclass);
Class cls = urlcl.loadClass(filename);

如果类没有包,这可以工作。

但是如果类带有package,则运行失败。

Exception in thread "main" java.lang.NoClassDefFoundError: packclass (wrongname: dirclass\packclass)

还有其他办法吗?

最佳答案

您必须向ClassLoader指定类的完全限定名称,例如:

Class cls = urlcl.loadClass("com.mypackage.MyClass");

关于java - 如果包含来自另一个目录的包,如何识别类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28342319/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com