使用java命令執行scala程式碼
歡迎轉載,轉載請註明文章出處,只需加個短短的地址:
Scala是執行在JVM上的語言,跑在標準的Java平臺上,可以與所有的Java庫實現無縫互動。
下面執行一個小程式來看看在JVM上如何使用java命令來執行Scala程式。
在編寫程式碼之前,我們首先要配置環境變數。
在Windows環境下Java和Scala的環境變數配置:
1.Java環境變數
JAVA_HOME = C:/Program Files/Java/jdk1.6.0_21(我本機的安裝目錄)
CLASSPATH = .;%JAVA_HOME%/lib;(. 代表包含當前路徑)
Path = %JAVA_HOME%/bin
2.Scala環境變數
SCALA_HOME = C:/scala-2.8.0.final
Path = %SCALA_HOME%/bin
OK!環境變數配置完了,開始寫程式碼,我們還是以HelloWorld為例:
在C:盤跟目錄下建立了HelloWorld.scala檔案,內容如下:
Scala Code:
檔案建好了,開始編譯:
先開啟命令列檔案->然後到C盤根目錄下輸入scalac HelloWorld.scala
很順利編譯通過,我們發現在C盤下生成了兩個編譯後的class檔案HelloWorld.class和HelloWorld$.class
編譯好了,執行Scala程式:
繼續輸入scala HelloWorld OH!我們看到了我們想要的hello world!
下面我們試著用java去執行一下:
輸入java HelloWorld
OH!沒有通過!得到了一大堆堆疊輸出以至於我沒辦法把如此多的輸出全部寫出來。
是什麼原因呢?原來在用java命令執行scala程式碼的時候需要引入scala類庫scala-library.jar下面我我們試試把命令寫成這樣的格式。
C:/>java -cp %SCALA_HOME%/lib/scala-library.jar;. HelloWorld
終於看到了hello world!
我們引入scala類庫以後得到了我們想要的結果,我們注意到在類庫結束以後有";."符號"."表示當前路徑去掉它也不影響執行效果,因為HelloWorld本身就在C盤根目錄下。
如果在定義環境變數的時候就把scala的類庫寫到java的CLASS_PATH變數裡面的話
CLASSPATH = .;%JAVA_HOME%/lib;%SCALA_HOME%/lib/scala-library.jar
我們直接執行java HelloWorld,就可以得到輸出了!