/ / Czy program Scala może zostać skompilowany do pracy na dowolnej maszynie JVM, bez zainstalowanego Scala na danym komputerze? - kompilator-konstrukcja, scala, jvm

Czy program Scala może zostać skompilowany do pracy na dowolnej maszynie JVM bez zainstalowanego Scala na danym komputerze? - kompilator-konstrukcja, scala, jvm

Jeśli napisałem program Scala, mogę go skompilowaćw taki sposób, aby każdy, kto ma standardową maszynę Java Java Javy, mógł ją uruchomić? Zgaduję, że kompilator Scali musiałby zawierać kod API specyficzny dla Scala w skompilowanym projekcie? Powodem, dla którego jestem zainteresowany, jest to, że nasze projekty klasowe mogą być zwykle dostarczane w dowolnym języku, który preferują, ale TA sortujące dostawy zazwyczaj chcą uruchomić kod na własnej maszynie lub na maszynach laboratoryjnych.

Odpowiedzi:

20 dla odpowiedzi nr 1

Nie musisz robić nic specjalnego, by biegaćTwój skompilowany program Scala na JVM. Jest to po prostu kod bajtowy JVM. Jedyne, czego potrzebujesz, to upewnić się, że standardowa biblioteka Scala (scala-library.jar) jest zawarta w ścieżce klasy w czasie wykonywania. To jest tylko dodatkowa zależność (a może również potrzebujesz scala-swing.jar, jeśli używasz wrapperów Swing dla swojego GUI).

Jeśli martwisz się wygodą dla użytkownikamoże nawet spakować aplikację do pojedynczego słoika, tak aby zawierał zawartość scala-library.jar oraz własne klasy i zasoby. Ale osobiście zrobiłbym to tylko wtedy, gdyby ten plik był wykonywalny (można go uruchomić jako java -jar yourApplication.jar).

Uwagi na temat biblioteki Scala:

  1. Zapewnia właśnie taką - bibliotekę. Brak interpretera, żadnego kompilatora lub specjalnego środowiska wykonawczego; więc nie powinieneś się martwić o problemy z ładowaniem klas.
  2. Powinna pasować do wersji Scala, której używasz podczas kompilacji programu (biblioteka Scala dla wersji 2.7 i dla wersji 2.8 nie jest wymienna).
  3. Można go znaleźć w swojej dystrybucji Scala: lib / scala-library.jar

5 dla odpowiedzi nr 2

Tak. Jeśli umieścisz odpowiedni plik jar biblioteki scala w ścieżce klasy, program scala może zostać uruchomiony przy użyciu java, ponieważ skompilowany kod scala jest taki sam, jak skompilowany kod Java.


1 dla odpowiedzi nr 3

Jeśli kiedykolwiek korzystałeś z dowolnej biblioteki Java, po prostu traktujScala jak oni. Pobierz słoik Scala (plik biblioteczny) i spakuj go razem ze swoim słoikiem za pomocą jednego z dostępnych programów lub rozprowadź je razem.