Verpackung und Bereitstellung von Scala -Anwendungen
-
26-09-2019 - |
Frage
Was ist der einfachste Weg, um eine Scala -Anwendung für die Verwendung auf einem Desktop -PC zu verpacken? Ich vermute, das wäre in Form einer JAR -Datei.
Im Moment verwende ich SBT, um Programme zu kompilieren und auszuführen
Ich würde mich für Lösungen für Maschinen interessieren, die Scala installiert haben (und die Bibliothek in ihrem Klassenpfad) sowie für Java, die nur Java haben.
Lösung
Der einfachste (und beständigste) Weg, eine Scala -Anwendung zu verpacken, ist die Verpackung in ein Glas (wie Sie es mit normalen Java -Anwendungen tun). Solange Jar aus Standard-zusammengestellten Java-Klassen besteht, können Sie "Scala" -Filger ausführen, auch wenn Sie keine Scala-Laufzeit in der Box haben (alles, was Sie brauchen, ist eine Java-Laufzeit und scala-lang.jar auf dem Klassenpfad). Sie können die Hauptklasse (Gateway zu Funktionalitäten Ihrer Anwendung) in der Manifestierung angeben
Main-Class: mypackage.MyClass
Damit Sie es nur als Jar -Name an Java.exe weitergeben können.
java -jar myjar.jar
Du könntest Geben Sie die Hauptklasse an in der SBT -Projektdefinition.
Andere Tipps
http://www.scala-sbt.org/sbt-native-packager/index.html
Mit dem Plugin können Sie in einer Vielzahl von Formaten (ZIP, TAR, DEB, DMG, MSI usw.) und in verschiedenen Archtypes einpacken.