我的java程序正在为一些awt类抛出java.lang.classnotfoundexception我该怎么办?

ncecgwcz  于 2021-06-26  发布在  Java
关注(0)|答案(1)|浏览(439)

当我运行java调试器时,我发现这个“java.lang.classnotfoundexception:sun/awt/resources/spi/awtprovider”和“java.io.filenotfoundexception:c:\program files\adoptopenjdk\jdk-11.0.6.10-hotspot\conf\accessibility.properties(系统找不到指定的文件)”我想我知道为什么,我的数据存储空间不足,所以我把程序移到另一个驱动器,这就是为什么它找不到javaapi类的原因吗?我该怎么解决这个问题?

avkwfej4

avkwfej41#

你不需要修理这个。 sun.awt.resources.spi.awtProvider 是作为可能的资源包提供程序自动生成的类名。如果找不到该类,将忽略它。
请参阅https://github.com/openjdk/jdk11u/blob/master/src/java.desktop/share/classes/java/awt/toolkit.java#l1416:

try {
                resources = ResourceBundle.getBundle("sun.awt.resources.awt");
            } catch (MissingResourceException e) {
                // No resource file; defaults will be used.
            }
``` `accessibility.properties` 是可用于配置辅助技术的可选文件。如果找不到此文件,则不会发生任何更改。
据来自https://github.com/openjdk/jdk11u/blob/master/src/java.desktop/share/classes/java/awt/toolkit.java#l423:

try {
File propsFile = new File(
System.getProperty("java.home") + sep + "conf" +
sep + "accessibility.properties");
FileInputStream in =
new FileInputStream(propsFile);

                // Inputstream has been buffered in Properties class
                properties.load(in);
                in.close();
            } catch (Exception e) {
                // System-wide accessibility properties file does
                // not exist;
            }

相关问题