繁体   English   中英

我的 java 程序为某些 AWT 类抛出 java.lang.ClassNotFoundException 我该怎么办?

[英]My java program is throwing java.lang.ClassNotFoundException for some AWT classes what do I do?

当我运行 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(系统找不到指定的文件)”我想我知道为什么,我的数据存储空间不足所以我将我的程序移动到另一个驱动器,这就是为什么它找不到 java API 类? 我该如何解决?

你不需要解决这个问题。

  • sun.awt.resources.spi.awtProvider是一个 class 名称,它作为可能的资源包提供程序自动生成。 如果未找到 class,它将被忽略。

请参阅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;
                }

一个Java程序正常启动的时候出现很多这样的异常。 为避免在每个地方都停止,请关闭调试器中的通用“捕获异常”断点,直到执行到您自己的代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM