2011-06-05 151 views
5

是否可以使用Java虛擬機運行scala文件?我嘗試了很多,但沒有任何工作。有人能給我一些命令行幫助嗎?非常感謝!在Java虛擬機上運行已編譯的Scala文件

+0

你有什麼操作系統,你是如何安裝scala的,你有什麼錯誤信息? – huynhjl 2011-06-05 21:19:35

+4

將'scala_library.jar'(如果您使用Swing,則爲'scala_swing.jar')添加到您的類路徑中,它應該可以工作。不要忘記添加當前目錄'.',否則你將無法看到自己的類。 – 2011-06-05 22:26:26

回答

4

Scala在JVM上運行。它沒有單獨的虛擬機。但它有自己的庫,所以無論你在哪裏運行,都需要安裝Scala。

如果它編譯你將有一個.class文件,所以你只需要輸入

scala -cp myClassPath myPackage.myFileName 

,你會使用Java。如果您已導航到您的classes文件夾,則不需要-cp選項。

有可能使用java命令運行Scala類 - 你可能谷歌如何做到這一點,但你需要理清所有正確的進口,而且也沒有理由不只是使用scala如上。

7

那麼,這取決於您是否生成JAR或類文件等,但它非常簡單:您像運行任何Java程序一樣運行它,但將Scala庫作爲依賴項運行。

java -cp .:/path/to/scala-library.jar MyApp 
+0

java -cp。:/ lib/scala-library.jar HelloWorld - >如果我的scala庫路徑是C:\ lib \ scala-library,我還需要添加什麼? – Domenico 2011-06-09 14:58:54

+0

也可以在scala文件上編譯使用javac嗎? – Domenico 2011-06-09 15:27:46

+0

@Domenico不,它不是。請注意,scalac不會編譯Java文件,它只是知道如何閱讀它們以瞭解它們正在聲明的內容。 – 2011-06-09 22:22:37