Wie Scala in IntelliJ IDEA (oder: Warum ist es so schwierig, eine Arbeits IDE für Scala zu erhalten)?

StackOverflow https://stackoverflow.com/questions/2668153

Frage

Ich habe vor kurzem gab es auf, Scala in Eclipse zu verwenden (grundlegende Dinge wie Abschluss nicht funktioniert). So, jetzt versuche ich IntelliJ. Ich bin nicht sehr weit zu bekommen.

Ich habe zu bearbeiten Programme in der Lage gewesen (innerhalb Syntax-Hervorhebung und Abschluss ... yay!). Aber ich bin nicht in der Lage, die einfachste „Hallo Welt“ läuft noch. Dies war der ursprüngliche Fehler:

Scala signature Predef has wrong version
Expected 5.0
found: 4.1 in .... scala-library.jar

Aber das war gestern mit IDEA 9.0.1. Siehe unten ...

UPDATE

Heute habe ich deinstalliert IntelliJ 9.0.1 und 9.0.2 installiert Frühe Verfügbarkeit, mit der 4/14 stabilen Version der Scala-Plug-in.

Dann habe ich Setup ein Projekt von Grund auf durch die Assistenten:

  • neues Projekt von Grund auf neu
  • JDK ist 1.6.u20
  • die Standardeinstellung (Projekt) statt global / Modul
  • akzeptieren Sie den Download von Scala 2.8.0beta1 in Projekt lib Ordner

Erstellt eine neue Klasse:

object hello {
  def main(args: Array[String]) {
    println("hello: " + args);
  }
}

Für meine Bemühungen, habe ich jetzt einen brandneuen Fehler habe:)

Hier ist sie:

Scalac interner Fehler: Klasse java.lang.ClassNotFoundException [java.net.URLClassLoader $ 1.run (URLClassLoader.java:202), java.security.AccessController.doPrivileged (native Methode), java.net.URLClassLoader.findClass ( URLClassLoader.java:190), java.lang.ClassLoader.loadClass (ClassLoader.java:307), sun.misc.Launcher $ AppClassLoader.loadClass (Launcher.java:301), java.lang.ClassLoader.loadClass (ClassLoader.java : 248), java.lang.Class.forName0 (native Methode), Java.Lang.Class.forName (Class.java:169), org.jetbrains.plugins.scala.compiler.rt.ScalacRunner.main (ScalacRunner.java : 72)]

FINAL UPDATE

ich deinstalliert 9.0.2 EA und neu installiert 9.0.1, aber diesmal ging mit der 2.7.3-Version von Scala statt dem Standard 2.7.6, weil 2.7.3 die in den Bildschirm-Aufnahmen in der gezeigt ist, IntelliJ Website (ich denke, die Bildschirm-Aufnahmen beweisen, dass sie diese Version tatsächlich getestet!). Jetzt funktioniert alles !!!

War es hilfreich?

Lösung

Ich habe den gleichen scalac Fehler aufgetreten beim Versuch, ein Scala-Projekt in IntelliJ IDEA 9.0.2 zu laufen und ich habe es geschaffen, eine Lösung durch Zufall zu finden :). Dies sind die Schritte, die ich nahm in das Projekt erstellen und es läuft.

Ich habe ein Scala-Projekt in IntelliJ IDEA 9.0.2 final erstellt (es wurde heute veröffentlicht). Ich habe die Scala-Plugin installiert, das IDE neu gestartet und ein neues Scala-Projekt (mit dem Namen „TestScala“) mit scala-2.8.0.Beta1 als Projektbibliothek erstellt. Sobald das Projekt erstellt und die scala Bibliotheken heruntergeladen, habe ich eine Test.scala Datei mit folgendem Inhalt erstellt:

object Test  {
 def main(args:Array[String]){
   println("hello")
 }
}

Danach erstellte ich eine Startkonfiguration ( „Edit-Konfigurationen“), die „Anwendung“ Vorlage auswählen. Ich habe als Hauptklasse-Test, und wählen Sie die Projektnamen ( „TestScala“) in dem „Use Classpath und JDK des Moduls“ Combo-Box. Wenn ich die Konfiguration betreiben ich die gleichen Fehler wie Sie berichtete ( „Scalac interne Fehler: Klasse java.lang.ClassNotFoundException“).

Jetzt kommt der ausgeflippt Teil :). Ich klicke rechts auf das Projekt, wählen Sie „Moduleinstellungen“, haben Sie einen Blick auf alle Einstellungen, aber Ich weiß nicht ändern nichts . Klicken Sie auf "Übernehmen" und "ok", versuchen Konfiguration laufen wieder und es funktioniert :).

verwende ich IntelliJ IDEA 9.0.2 die endgültige Version (Build 95-66); Ubuntu 9.10 und JDK 1.6.0_18. Ich muss auch erwähnen, dass ich in IntelliJ konfiguriert ist, ein JDK hatte, sonst gibt es einen zusätzlichen Schritt zu konfigurieren.

UPDATE:

Wenn Sie die Einstellung des Moduls überprüft, was man braucht, um klicken Sie auf das Module-> Scala und Facets-> Scala (es erweitern und klicken Sie auf Scala (Projektname)) . Beide Einstellungen sind über die scala Compiler und SCALA Bibliothek Lage. Ich würde diese Werte erraten sind nicht richtig eingestellt, wenn das Projekt erstellt wird aber gespeichert werden, sobald der Benutzer sie berührt und speichert die Einstellungen.

Andere Tipps

Um Ihre Frage zu beantworten, ist es schwierig, eine Arbeits IDE für Scala aus zwei Gründen zu bekommen: (A) Scala ist nur gerade ein breites Publikum zu erreichen beginnen und (B) aufgrund (a), gibt es keinen Business Case für die Zeit auf einer Scala IDE verbringen.

Auch wenn Sie alt genug sind, Ihren Geist zurück und jung genug, um noch zu werfen erinnern Sie, dass für die ersten fünf oder mehr Jahren von Java kennen würde, waren wir mit ok-ish-Tools wie JBuilder stecken, die wenig tat mehr Ihr Code als der Kompilierung, wenn Sie gesagt - kein Fehler hervorheben, kein auto-Import, und das Wort Refactoring existieren gar nicht. Wenn Sie Pionier wollen, müssen Sie bereit sein, einen Teil der Straße zu schneiden selbst oder zumindest Busch bash.

Ich weiß, es wird dir nicht helfen, aber ich habe erfolgreich IDEA für Scala auf Linux, Mac und Windows verwendet wird. Ich habe in der Regel die Scala SDK irgendwo vor Ort und Stelle IDEA an, dass anstatt die ‚Download‘ Option installiert ist.

Zur Zeit benutze ich meist eine EAP Version von IDEA 9 auf Mac OS X mit Scala 2.8.0.Beta1-RC5 und es funktioniert gut (außer dass fsc scheint nicht mit gemischten Quellen gearbeitet).

Sie könnten versuchen Sie Ihr Glück über an der IDEA Scala Plugin Forum , obwohl ich habe nicht eine große Menge Antworten auf meine eigenen Postings hatte es.

Installieren der Plug-in ist Voraussetzung ein.

Das nächste, was Sie tun sollen, definiert eine Bibliothek (global oder projektspezifische, ich verwende global), die die Scala Bibliothek hält und Compiler JAR-Dateien (auf einem Minimum, das ist scala-compiler.jar und scala-library.jar) . Hinzufügen Quelle JAR-Dateien und eine Dokumentation JAR oder URLs ist eine gute Idee, auch. Dann diese Bibliothek macht eine Abhängigkeit von Modulen in Ihrem Projekt, die Scala-Code enthalten.

Schließlich finden die Scala Facetten in diesen Modulen und de-aktivieren Sie die beiden Kontrollkästchen gibt.

Ich habe gerade eine neue Installation und genau das gleiche Problem selbst hatte. Es stellte sich heraus, dass, weil ich die Datei im Root-Paket erstellt hatte, IDEA mit der Benennung ein Paket eine Paketanweisung an der Spitze hinzugefügt hatte. Ich gehe davon aus, dass dies dann als „Paketobjekt Main“ zusammengestellt wurde - gültige Syntax in 2.8? Wie auch immer, löschte ich die Zeile, das Paket gesagt und es hat gut funktioniert.

Ich hatte das gleiche Problem gestern bei dem Versuch, es einzurichten. Lösung ist recht einfach, man muss nur in Projekteinstellungen Satz scala irgendwo hat.

Sie sind Code Mischen mit zwei verschiedenen Scala-Versionen zusammengestellt.

Ich benutze Netbeans zu schreiben scala-Programme. Bisher funktioniert es sehr gut mit meinen Codes. Sie können das Plugin versuchen hier:. http://wiki.netbeans.org/Scala68v1

Ich habe immer diese Fehlermeldung und auch auf der rechten Maustaste auf das Projekt und „Open-Modul-Einstellungen“ hatte. Allerdings war es mehr als nur schlagen gilt. Ich musste sicherstellen, dass mein Inhaltsstamm für jedes Projekt richtig war. Aus irgendeinem Grund gibt es einige falsche Quelle und Test waren Ordner.

Ihr Projekt verwendet als Haupt Build-Tool maven und das Projekt in IntelliJ Import ist wahrscheinlich das, was diese falschen Einstellungen erstellt.

Ich hatte ähnliches Problem, folgende diese Blog Post Anweisungen lösten das Problem für mich

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top