Otrzymałem projekt IntelliJ od kogoś innego, ale nie uruchomi on nawet najprostszych klas dla mnie.Wyjątek ClassNotFoundException w IntelliJ IDEA
Jako szybki przykład poniższa klasa rzuci ClassNotFoundException
bez błędów kompilatora:
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);
}
}
to rzuci się następujący błąd:
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
Struktura pliku jest następująca: <git root>
/src
/myPackage
/Main.java
Ustawiłem folder "src" jako "folder źródłowy". Moja aplikacja nie ma błędów kompilatora. Kilka razy unieważniłem pamięci podręczne, ale bez żadnego efektu. W moich ustawieniach modułu moje zależności modułów zawierają <Module source>
i jdk 1.8.
Nie mogę znaleźć odpowiedzi tutaj (google) w dowolnym miejscu, i wydaje mi się, że ten błąd ma związek ze sposobem, w jaki IntelliJ obsługuje projekt. Kiedy po raz pierwszy wyciągnąłem projekt, folder src
NIE został ustawiony jako folder źródłowy, co prawdopodobnie oznacza, że mogę również przegapić inne ustawienia.
Czy repozytorium git zawierało projekt intellij? Jeśli tak, to jest prawdopodobny problem. Zazwyczaj podczas zarządzania projektem 90% plików projektu nie ma związku z kodem i może być specyficzne dla komputera/os. Lepiej zignorować pliki projektu i zbudować nowy projekt na każdym komputerze programisty. Sugerowałbym usunięcie projektu (nie kodu) i utworzenie nowego. Następnie gitignore wszystkie pliki intellij, aby uniknąć tego w przyszłości –
@ZackNewsham Co masz na myśli przez "projekt"? Folder .idea? – yts
@yts dokładnie, to samo dla wszystkich netbeans IDE jest nbproject choć. –