作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这个问题很受欢迎,但我找不到避免“java.lang.ClassNotFoundException”的方法。
我实现了一种动态加载一些外部类的方法(在提取 war 文件后得到的)
Class<?> classGetter() {
URL url;
Class<?> cls = null;
try {
String className=new Substringer(entireFilePath.getName(), 5).output;
String classPath=new
Substringer(entireFilePath.getAbsolutePath(),5+className.length()).output;
File classDirPath = new File(classPath);
url = classDirPath.toURI().toURL();
URL[] urls = new URL[]{url};
URLClassLoader cl = new URLClassLoader(urls);
cls = cl.loadClass(packageGetter()+"."+className);
cl.close();
} catch (ClassNotFoundException | IOException e) {
e.printStackTrace();
}
return cls;
}
同样的异常仍然一次又一次地出现。这是堆栈跟踪:
java.lang.ClassNotFoundException: bber.Counter
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at earviewer.ClassesLoaser.classGetter(ClassesLoaser.java:48)
at earviewer.ClassesLoaser.main(ClassesLoaser.java:58)
Exception in thread "main" java.lang.NullPointerException
at earviewer.ClassesLoaser.main(ClassesLoaser.java:59)
最佳答案
当您提供类的完全限定名称但尝试将其加载到包内时,会发生此错误。我们应该选择类文件的路径,而不进入包文件夹
关于java - 从提取的 war 文件动态加载外部类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58963462/
我是一名优秀的程序员,十分优秀!