Trong bài viết này chúng ta sẽ cùng nhau tìm hiểu về cách download và cài đặt môi trường cho ngôn ngữ Scala trên Linux, Unix và Window. Scala chạy trên JVM, do đó bạn cần cài đặt JDK 1.6 hoặc mới hơn trước khi thực hiện cài đặt Scala. Khi chúng ta bắt đầu bài viết này, thì tôi đã mặc định coi như rằng bạn đã cài đặt Java trên máy của mình
Download và cài đặt Java trên Linux
Scala cài đặt được trên tất cả các môi trường Linux, Ubuntu, MacOSX hay bất kỳ hệ thống nào mà dựa trên Unix, nên các bước bên dưới đây sẽ hoạt động trên toàn bộ hệ thống *nix.
- Kiểm tra xem máy của bạn đã cài đặt JDK chưa. Mở terminal và gõ lệnh
java -version
vàjavac -version
$ java -version java version "1.8.0_20" Java(TM) SE Runtime Environment (build 1.8.0_20-b26) Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode) $ javac -version javac 1.8.0_20
2. Download Scala binary theo đường dẫn http://www.scala-lang.org/download/
. Ví dụ như bài viết này chúng ta sử dụng scala version 2.11.6, do đó bạn có thể download file scala-2.11.6.tgz, sau đó giải nén file scala-2.11.6.tgz sử dụng câu lệnh như bên dưới đây
$ tar -xvzf scala-2.11.6.tgz scala-2.11.6/ scala-2.11.6/man/ scala-2.11.6/man/man1/ scala-2.11.6/man/man1/scala.1 scala-2.11.6/man/man1/scalap.1 scala-2.11.6/man/man1/fsc.1 scala-2.11.6/man/man1/scaladoc.1 scala-2.11.6/man/man1/scalac.1 scala-2.11.6/bin/ scala-2.11.6/bin/scalac ...
Hãy chuyển đường dẫn hiện tại đến thư mục mà sinh ra sau khi giải nén sử dụng câu lệnh cd
như bên dưới đây
Ví dụ trong bài viết này máy tôi download về thư mục Downloads
, nơi mà file Scala binary được giải nén
$ cd ~/Downloads [Downloads]$
Nào hiện giờ chúng ta đã ở bên trong thư mục Downloads
nơi mà chứa file Scala binary, giờ đến thư mục bin
[Downloads]$ cd scala-2.11.6 [scala-2.11.6]$cd bin
Tiếp theo hãy gõ câu lệnh sau để chạy Scala
[bin]$ ./scala Picked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true -Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel Welcome to Scala version 2.11.6 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_20). Type in expressions to have them evaluated. Type :help for more information. scala>
Đây là Scala REPL shell nơi chúng ta có thể gõ các chương trình hoặc đoạn code trong scala và có thể xem được kết quả chạy lệnh trên shell
Download và cài đặt Scala trên Window
- Để kiểm tra xem Java đã được cài trên Windown hay chưa, hãy gõ câu lệnh sau đây
Microsoft Windows [Version 6.3.9600] (c) 2013 Microsoft Corporation. All rights reserved. C:\Users\Scala>java -version java version "1.8.0_31" Java(TM) SE Runtime Environment (build 1.8.0_31-b13) Java HotSpot(TM) Client VM (build 25.31-b07, mixed mode, sharing) C:\Users\Scala>javac -version javac 1.8.0_20 C:\Users\Scala>
2. Download Scala binary theo đường dẫn http://www.scala-lang.org/download/
. File cài đặt Scala sẽ được download về với đuôi là .msi
Click đúp hoặc mở file scala-2.11.6.msi lựa chọn run. Màn hình cài đặt sẽ được hiển thị, click next và hoàn tất quá trình cài đặt. Trình cài đặt Scala sẽ thiết lập đường dẫn các biến môi trường, do đó bạn có thể chạy Scala ở bất kỳ đâu
3. Mở command prompt và chuyển đến thư mục cài đặt scala bằng cách gõ câu lệnh sau
C:\Program Files (x86)>cd scala C:\Program Files (x86)\scala>cd bin C:\Program Files (x86)\scala\bin>scala.bat Welcome to Scala version 2.11.6 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_3 1). Type in expressions to have them evaluated. Type :help for more information. scala>
Đây là Scala REPL shell nơi chúng ta có thể gõ các chương trình hoặc đoạn code trong scala và có thể xem được kết quả chạy lệnh trên shell. Chúng ta có thể kiểm tra Scala version bằng cách sử dụng câu lệnh sau
C:\Users\Scala>scala -version Scala code runner version 2.11.6 -- right 2002-2013, LAMP/EPFL
Ví dụ
Nào chúng ta sẽ cùng viết một chương trình nhỏ để biết được cách chạy Scala trên shell. Bên dưới đây là một class Student
mà chúng ta định nghĩa trong Scala shell
class Student() { var id:Int = 0 var age:Int = 0 def studentDetails(i:Int,a:Int) { id = i age = a println("Student Id is :"+id); println("Student Age is :"+age); } }
Kết quả
defined class Student
Hình minh hoạ bên dưới sẽ giúp bạn hình dung nó hoạt động trên shell như thế nào
Như vậy chúng ta đã tạo xong class Student
và hàm để in ra thông tin của Student sử dụng phương thức studentDetails
nhận 2 tham số đầu vào là Id và tuổi của Student. Nếu không có lỗi gì xảy ra thì thông báo defined class Student
sẽ được in ra
Tạo một Student object và thử gọi phương thức studentDetails
bằng cách truyền vào id và tuổi.
object Stud { def main(args:Array[String]) { val stu = new Student(); stu.studentDetails(10,8); } }
Kết quả
defined object Stud
Nào hãy chạy code bằng cách gõ Stud.main(null) và bạn sẽ thấy kết quả như hình bên dưới đây