Fehler:Skala:Keine „scala-library*.jar“ in der Scala-Compiler-Bibliothek
-
21-12-2019 - |
Frage
Umfeld: Spielen Sie 2.3.0/Scala 2.11.1/IntelliJ 13.1
Ich habe Typesafe Activator 1.2.1 verwendet, um ein neues Projekt mit Scala 2.11.1 zu erstellen.Nachdem das Projekt erstellt wurde, habe ich es ausgeführt gen-idea
.Das generierte IDEA-Projekt kann nicht mit folgendem Fehler kompiliert werden:
Error: scala: No 'scala-library*.jar' in Scala compiler library in test
Mache ich etwas falsch?Problemumgehung?
Lösung
Seit der Idee 13 sollten Sie SBT-Unterstützung verwenden, die mit Scala-Plugin gebündelt ist.
Da ist es nicht erforderlich, SBT-Plugins von Drittanbietern hinzuzufügen und spezielle Befehle auszuführen.Importieren Sie einfach das Projekt mit dem Menüpunkt "Datei -> Importierungsprojekt ...", und es wird automatisch die SBT-Projektstruktur und ihre Abhängigkeiten geladen.
Andere Tipps
- .
-
Öffnen Sie Datei -> Projektstrukturen -> Bibliotheken, entfernen Sie alle skala SDK darin, z. Scala-SDK-2.11.8 im folgenden Bild.
-
Wählen Sie die richtige SCALA SDK aus der Liste aus, für mich ist es ivy-scala-2.11.8 auf dem Bild angezeigt.
-
Wählen Sie das aktuelle Projekt aus (Mine ist generakodicetagcode), klicken Sie auf OK.
-
läuft wieder, es sollte jetzt arbeiten.
Ich hatte das gleiche Problem mit den von. --IDEA-Dateien, die von ./Activator-Idee mit Play 2.3 erzeugt wurden.Ein kurzer Fix besteht darin, in "Projektstruktur-> Module" zu schauen und den Namen der Compiler-Bibliothek zu beachten.Für mich war es "SBT: scala2.11.1".Der Look in "Projektstruktur-> Bibliotheken" und überprüfen Sie den Inhalt dieser Bibliothek.Es sollte scala-compiler.jar, scala-library.jar, scala-reflect.jar enthalten.Wenn diese Bibliotheken nicht vorhanden sind, fügen Sie sie hinzu (in meinem Fall befinden sie sich in ~ / .sbt / boot / scala-2.11.1 / lib).
für die idee 15 und das projekt exportiert von activator 1.3.5 Nur Russells Lösung half im Moment. Ich habe eine festgelegte Scala-Compiler-Bibliothek mit der Hinzufügen von 3 Bibliotheken in ~ / .sbt / boot / scala-2.11.1 / lib bis zum Compiler-Classic-Klassen- und Klassen von Bibliothek.Nach dem Indexierungsprojekt wurde diese Bibliothek auf globale Ideenbibliotheken verschoben und dort gespeichert.
Ich hatte das gleiche Problem.
Wenn Sie Ihr Projekt extern erstellen sbt
d.h sbt compile
Dann werden Abhängigkeiten in Bibliotheken erstellt oder hinzugefügt (auch alle externen Abhängigkeiten) und Scala SDK wird hinzugefügt als SBT:scala*
basierend auf der Version Ihrer Scala.So können Sie entfernen SDK
mit SBT als Präfix und fügen Sie das richtige SDK über Intellij hinzu.
File->Project Structure->Libraries
Entfernen Sie das SBT SDK und fügen Sie es manuell hinzu.
Für mich mit Idee 12 habe ich dieses Problem behoben, wenn ich das Kontrollkästchen für "externer Build" in Einstellungen.compiler nicht markiert habe.