几个月来,我一直在使用 IntelliJ IDEA 编写我的 Java 项目。我总是把它们放在同一个目录中,IDE 从来没有出现过任何问题。
然而,在开始一门新的 Java OOP 大学课程后,我决定将我所有的大学项目保存在一个单独的目录中。令我惊讶的是,IntelliJ IDEA 只是拒绝编译这里创建的任何项目。
我得到的具体错误是:
Error: Could not find or load main class Main
Caused by: java.lang.ClassNotFoundException: Main
Process finished with exit code 1
它建议“重建项目”,结果如下:
Internal error (java.io.IOException): Cannot find IntelliJ IDEA project files at C:\IMPERIUM ROMANUM\Fakultet Tehnickih Nauka\Semestar II\Objektno Orijentisano Programiranje I\Vežbe\VEZBE_00 et VEZBE_01\Vezbe01
java.io.IOException: Cannot find IntelliJ IDEA project files at C:\IMPERIUM ROMANUM\Fakultet Tehnickih Nauka\Semestar II\Objektno Orijentisano Programiranje I\Vežbe\VEZBE_00 et VEZBE_01\Vezbe01
at org.jetbrains.jps.model.serialization.JpsProjectLoader.loadProject(JpsProjectLoader.java:124)
at org.jetbrains.jps.model.serialization.JpsProjectLoader.loadProject(JpsProjectLoader.java:101)
at org.jetbrains.jps.model.serialization.impl.JpsSerializationManagerImpl.loadModel(JpsSerializationManagerImpl.java:23)
at org.jetbrains.jps.cmdline.JpsModelLoaderImpl.loadModel(JpsModelLoaderImpl.java:34)
at org.jetbrains.jps.cmdline.BuildRunner.load(BuildRunner.java:68)
at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:347)
at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:193)
at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler.lambda$channelRead0$0(BuildMain.java:211)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1589)
Please perform full project rebuild (Build | Rebuild Project)
这非常令人沮丧,因为我们正在谈论最简单的“Hello World”代码,它的复杂度为 0,甚至不使用除 Main 之外的任何其他类。
有趣的是,同样的代码可以通过命令提示符完美编译
javac Main.java
并且运行没有任何问题
java Main
有没有人有类似的经历?为什么 IntelliJ 表现如此,同时在所有以前的项目中都运行良好?