2009-12-12 9 views
7

Jeśli napisałem program Scala, czy mogę skompilować go w taki sposób, aby mógł go uruchomić każdy ze standardową maszyną JVM Sun Java? Zgaduję, że kompilator Scali musiałby zawierać kod API specyficzny dla Scala w skompilowanym projekcie? Jestem zainteresowany tym, że nasze projekty klasowe mogą być zwykle dostarczane w dowolnym języku, który preferują, ale TA sortuje dostawy z reguły chcąc uruchomić kod na własnej maszynie lub na maszynach laboratoryjnych.Czy program Scala może zostać skompilowany do uruchamiania na dowolnej maszynie JVM bez zainstalowanego Scala na danym komputerze?

Odpowiedz

20

Nie musisz robić nic specjalnego, aby uruchomić skompilowany program Scala na maszynie 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ą użytkownika, możesz nawet spakować aplikację do pojedynczego słoika, 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 o Scala biblioteki:

  1. Zapewnia tylko, że - biblioteka. 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

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

Jeśli kiedykolwiek korzystał z żadnych bibliotek Java, tylko leczyć Scala 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.

Powiązane problemy