IntelliJ IDEA 中线程主 Java.Lang.ClassNotFoundException 异常
本篇文章将讨论每当执行 Java 程序的 main 方法时出现 java.lang.ClassNotFoundException 的潜在原因。
Java 中的 java.lang.ClassNotFoundException 错误
如果 ClassLoader 在其系统中找不到该类,则会触发 java.lang.ClassNotFoundException。 在JVM(Java虚拟机)核心库中,ClassLoader用于加载和定位一个类。
如果 ClassLoader 无法从应用程序库加载类,则会抛出此错误。
此外,您应该了解此异常的检查性质,以及在调用可触发 Java 中 java.lang.ClassNotFoundException 的方法时正确处理该异常的必要性,无论是通过 try-catch 块还是 throws 条件。
让我们通过一个示例来更好地理解在 Intellij IDEA 14.0 上的 Java 中抛出 java.lang.ClassNotFoundException 的情况。 之后,我们将讨论其原因和解决方案。
在这个例子中,我们构建了一个基本的Hello Programers! 程序。 它产生不正确的输出; 因此,将会触发 java.lang.ClassNotFoundException 异常。
public class Hello {
public static void main(String[] args) {
System.out.println("Hello Programers!");
}
}
输出:
Exception in thread "main" java.lang.ClassNotFoundException: Hello
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:260)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:116)
Intellij IDEA中出现java.lang.ClassNotFoundException的原因
以下是导致此异常的一些因素:
- 当我们尝试利用类的二进制文件加载类时,我们发现它不存在于类路径中。
- 如果我们使用Java中ClassLoader类的loadClass()函数。
- 当 Java 虚拟机在运行时尝试加载类时,会发生 java.lang.ClassNotFoundException。
Intellij IDEA中java.lang.ClassNotFoundException的解决办法
这只是Intellij IDEA的问题。 因此,请按照以下步骤进行修复:
- 首先启动 IntelliJ IDEA,然后同时按 Ctrl、Shift、Alt 和 s 打开“项目设置”窗口。
-
在左侧面板上,选择模块,然后展开 your_project_name,最后转到
(your_project_name) _main
。 - 单击新窗口中的“来源”选项卡。 然后单击列表顶部项目旁边的 x。
- 单击“确定”。
- 从源列表中,右键单击 D:\users\proj\platform-authorization\src\main。 然后,单击“确定”应用更改。
- 最后,构建您的项目并运行。
相关文章
如何在 Java 中延迟几秒钟的时间
发布时间:2023/12/17 浏览次数:217 分类:Java
-
本篇文章主要介绍如何在 Java 中制造程序延迟。本教程介绍了如何在 Java 中制造程序延时,并列举了一些示例代码来了解它。
如何在 Java 中把 Hashmap 转换为 JSON 对象
发布时间:2023/12/17 浏览次数:187 分类:Java
-
它描述了允许我们将哈希图转换为简单的 JSON 对象的方法。本文介绍了在 Java 中把 Hashmap 转换为 JSON 对象的方法。我们将看到关于创建一个 hashmap,然后将其转换为 JSON 对象的详细例子。
如何在 Java 中按值排序 Map
发布时间:2023/12/17 浏览次数:171 分类:Java
-
本文介绍了如何在 Java 中按值对 Map 进行排序。本教程介绍了如何在 Java 中按值对 Map
进行排序,并列出了一些示例代码来理解它。
如何在 Java 中打印 HashMap
发布时间:2023/12/17 浏览次数:192 分类:Java
-
本帖介绍了如何在 Java 中打印 HashMap。本教程介绍了如何在 Java 中打印 HashMap 元素,还列举了一些示例代码来理解这个主题。
在 Java 中更新 Hashmap 的值
发布时间:2023/12/17 浏览次数:146 分类:Java
-
本文介绍了如何在 Java 中更新 HashMap 中的一个值。本文介绍了如何在 Java 中使用 HashMap 类中包含的两个方法-put() 和 replace() 更新 HashMap 中的值。
Java 中的 hashmap 和 map 之间的区别
发布时间:2023/12/17 浏览次数:79 分类:Java
-
本文介绍了 Java 中的 hashmap 和 map 接口之间的区别。本教程介绍了 Java 中 Map 和 HashMap 之间的主要区别。在 Java 中,Map 是用于以键值对存储数据的接口,
在 Java 中获取用户主目录
发布时间:2023/12/17 浏览次数:218 分类:Java
-
这篇文章向你展示了如何在 Java 中获取用户主目录。本教程介绍了如何在 Java 中获取用户主目录,并列出了一些示例代码以指导你完成该主题。
Java 中 size 和 length 的区别
发布时间:2023/12/17 浏览次数:179 分类:Java
-
这篇文章教你如何知道 Java 中大小和长度之间的区别。本教程介绍了 Java 中大小和长度之间的区别。我们还列出了一些示例代码以帮助你理解该主题。
Java 中的互斥锁
发布时间:2023/12/17 浏览次数:111 分类:Java
-
了解有关 Java 中互斥锁的一切,在计算机科学领域,互斥或互斥被称为并发控制的属性。每台计算机都使用称为线程的最小程序指令序列。有一次,计算机在一个线程上工作。为了更好地理解,