IntelliJ IDEA中的ClassNotFoundException

时间:2014-12-01 01:19:22

标签: java intellij-idea intellij-14

我收到了其他人的IntelliJ项目,但它对我来说甚至不能运行最简单的课程。

作为一个简单的例子,下面的类将抛出ClassNotFoundException而没有编译器错误:

package myPackage;

public class Main {
    public static void main(String[] args)  {
        System.out.println("Hello World!");
        System.out.println("Soon our GUI will start from here!");
        System.exit(0);
    }
}

这会抛出以下错误:

Exception in thread "main" java.lang.ClassNotFoundException: myPackage.Main
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)

Process finished with exit code 1

文件结构如下: <git root> / src / myPackage / Main.java

我已经设置了&#39; src&#39;文件夹作为&#39;源文件夹&#39;。我的应用程序没有编译错误。 我已经多次使缓存失效,但没有任何效果。 在我的模块设置中,我的模块依赖项包含<Module source>和jdk 1.8。

我似乎无法在任何地方(google)找到答案,对我而言,这似乎与IntelliJ处理项目的方式有关。当我第一次拉动项目时,src文件夹尚未设置为源文件夹,这可能意味着我可能也错过了其他设置。

1 个答案:

答案 0 :(得分:1)

扎克·纽瑟姆的建议对我有所帮助。这是我做的:

  1. 已删除.iml文件
  2. 文件&gt;新&gt;项目,使用代码
  3. 指定现有文件夹
  4. 完成项目设置(Manifest,art​​ifacts)。
  5. 现在项目正在运行。

    当然,ClassNotFound可能还有其他原因。但是,如果一切正常,或者之前的错误出现,请尝试以下简单的步骤。