Wenn ich versuche, ein einfaches Modul in IntelliJ zu erstellen, antwortet es mit:
Fatal Error: Unable to find package Java.lang in classpath or bootclasspath
Irgendwie wurden die JDK-Sprachgläser aus dem Klassenpfad entfernt. Alles, was ich tun musste, war, den JSDK-Startpfad erneut anzuwenden.
Gehe zu: Datei -> Projektstruktur -> Plattformeinstellungen -> SDKs Wenden Sie den JSDK-Ausgangspfad erneut an.
Auf diese Weise wurden dem Klassenpfad etwa 15 Gläser hinzugefügt. Anscheinend sind diese für das Kompilieren wichtig.
Datei -> Projektstruktur -> Plattformeinstellungen -> SDKs, entfernen Sie das vorhandene SDK und fügen Sie es erneut hinzu.
Funktioniert für mich in IntelliJ 2017.3.
Dieser Fehler ist mir passiert, nachdem ich meine JDK-Version auf jdk1.8.0_161 aktualisiert habe.
Aber das SDK des Projekts zeigte immer noch auf das alte JDK 1.8.0 _131
(Scheint, dass das Aktualisieren Java bewirkt, dass die vorherige Version gelöscht wird).
Mach das:
Innerhalb Platform Settings > SDKs
:
Stellen Sie sicher, dass das Feld für den JDK-Startpfad auf einen gültigen JDK-Ordner verweist (fügen Sie bei Bedarf einen neuen Eintrag hinzu, z. B. jdk1.8.0_161).
Innerhalb Project Settings > Modules
:
Vergewissern Sie sich, dass für das Modul-SDK derselbe Eintrag festgelegt ist, den Sie in Platform Settings > SDKs
Das hat bei mir funktioniert:
In den Einstellungen Build Tools > Maven > Runner > Environment Variables
einstellen Java_HOME
zu Ihrem JDK-Startpfad.
Normalerweise möchten Sie dasselbe Java JDK verwenden, das Sie in IntelliJ verwenden. Sie finden es unter Project Structure > Platform Settings > SDKs
unter JDK home path
.
z.B. /Library/Java/JavaVirtualMachines/jdk1.8.0_66.jdk/Contents/Home
Nachdem ich this geantwortet hatte, erfuhr ich, dass %LOCALAPPDATA%/IDEA/config/options/jdk.table.xml
enthielt falsche Einträge. Das Beheben der JDK-Tabelle hat das Problem behoben.
JDK-Ausgangspfad: PASTE_THE_JDK_LOCATION (Wie hier im Screenshot " Projektstruktur "
Wieder aufbauen
Prost :)