Eclipse und Scala

Um Eclipse mit Scala und dessen Simple Build Tool (SBT) zu nutzen muss man eigentlich nur 2 Plugins installieren.

1. Plugin: SCALA-IDE (http://scala-ide.org/)

Die Installation verläuft eigentlich problemlos. Einfach über den Eclipse Marketplace installieren. Also in Eclipse Help > Eclipse Marketplace… > Find: „Scala“ > Install

Jetzt kann man wie gewohnt Scala-Projekte anlegen.

Das Projekt wird automatisch vor den ausführen (Run) kompiliert. Wenn man allerdings einfach Rechtsklick auf das Projekt macht wird man unter den Punkt „Run As…“ nur „Java Application / Applet“ finden. Die Option „Scala Application“ wird nur angezeigt wenn man direkt auf die Source-Datei einen Rechtsklick macht, und auch nur wenn diese eine „main“-Methode beinhaltet oder z.B. von App extended.

2. Plugin: sbteclipse (https://github.com/typesafehub/sbteclipse/)

Das „standard“ Build Tool für Scala ist SBT, des weiteren kümmert es sich um die Abhängigkeiten zu anderen Libraries und lädt diese automatisch aus den eigenen Repository.

Anders als man vielleicht erwartent ist es kein Plugin für Eclipse, denn es erweitert SBT um eine weitere Funktion: Führt man in SBT das Kommando „eclipse“ aus, werden die nötigen Projekt/Konfikurations-Dateien erstellt. Mit diesen Dateien ist es möglich das Projekt in Eclipse zu Importieren ( File > Import > General > Existing Projects into Workspace), man spart sich die Konfiguration der Abhängigkeiten.

Um das Plugin zu installieren erstellt folgende Datei unter diesen Pfad: %HOMEPATH%\.sbt\0.13\plugins\plugins.sbt

addSbtPlugin(„com.typesafe.sbteclipse“ % „sbteclipse-plugin“ % „4.0.0“)

Nachdem man die Datei angelegt hat muss man sbt neu starten oder das Kommando update benutzen.

Achtung: anders als in der Dokumention beschrieben Funktioniert es nicht mehr die Plugin-Datein in Projekt Verzeichnis zu packen. Es wird dann folgenden Fehler auftreten:

unresolved dependency: com.typesafe.sbteclipse#sbteclipse-plugin;4.0.0: not found

Ich hoffe ich kann jemanden mit dieser Anleitung ein wenig helfen, gerade für den letzten Punkt musste man etwas länger googlen.

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Time limit is exhausted. Please reload CAPTCHA.