
Linux下Scala的安装 原创
Scala的安装
春节不停更,此文正在参加「星光计划-春节更帖活动」
关于作者
- 作者介绍
🍓 博客主页:作者主页
🍓 简介:JAVA领域优质创作者🥇、一名在校大三学生🎓、在校期间参加各种省赛、国赛,斩获一系列荣誉🏆。
🍓 关注我:关注我学习资料、文档下载统统都有,每日定时更新文章,励志做一名JAVA资深程序猿👨💻。
(1)Linux系统的安装
Scala运行在Java虚拟机(JVM)之上,因此只要安装有相应的Java虚拟机,所有的操作系统都可以运行Scala程序,包括Window、Linux、Unix、Mac OS等。本教程后续的Spark操作都是在Linux系统下进行的
(2)Linux系统中安装JDK
参考教程:Linux安装jdk1.8及配置环境变量
(3)Linux系统中安装Scala
第一步:访问Scala官网,下载Scala。如果是Linux操作系统,下载.tgz格式的安装包,我这下载到scala-2.11.8.tgz。下载完成后,切换到“~/下载/”目录下面,其中,“~”表示当前用户的工作目录,如果你当前正在使用用户名为hadoop登录Linux系统,那么,当前用户的工作目录就是“/home/hadoop/”。
首先要指定Scala的安装目录,这里我们选择安装在“/usr/local/”目录下,这里假设当前用户登录名是hadoop。
第二步:把刚才下载的scala-2.11.8.tgz文件解压缩到“/usr/local/”目录下,修改文件夹名称,并hadoop用户赋予权限,具体如下:
sudo tar -zxf ~/下载/scala-2.11.8.tgz -C /usr/local # 解压到/usr/local中
cd /usr/local/
sudo mv ./scala-2.11.8/ ./scala # 将文件夹名改为scala
sudo chown -R hadoop ./scala # 修改文件权限,使hadoop用户拥有对scala目录的使用权限
第三步:需要把scala命令添加到path环境变量中。这里我们在 ~/.bashrc 中进行设置。采用vim编辑器打开.bashrc文件进行操作:
vim ~/.bashrc
打开vim编辑器后,在键盘敲击输入一个字母e,进入编辑状态,然后才能修改内容。
然后,在.bashrc文件的最开头位置,修改path环境变量设置,把scala命令所在的目录“/usr/local/scala/bin”增加到path中,具体如下:
export PATH=$PATH:/usr/local/scala/bin
这里需要注意,PATH和等号之间,不能有任何空格,否则会出错。
修改后,保存退出(方法是:首先,按键盘Esc键,退出vim的编辑状态,然后敲击键盘输入“:wq”三个英文字母,然后回车,即可保存退出)。
第四步:使配置的环境变量生效
source ~/.bashrc # 使变量设置生效
设置完成后,检验一下是否设置正确,输入scala命令:
scala
输入scala命令以后,屏幕上显示scala和Java版本信息,并进入“scala>”提示符状态,就可以开始使用Scala解释器了,你就可以输入scala语句来调试程序代码了。
显示如图所示的效果就表示成功运行。
使用Scala解释器
由于安装过程中,安装程序已经自动设置了path变量,所以,不需要再次给出scala命令的路径全称,实际上,scala命令位于scala安装目录的bin目录下。
运行Scala解释器以后,就可以测试了,输入一条语句,解释器会立即执行语句并返回结果,这就是我们所说的REPL(Read-Eval-Print Loop,交互式解释器),为我们提供了交互式执行环境,表达式计算完成就会输出结果,而不必等到整个程序运行完毕,因此可即时查看中间结果,并对程序进行改,这样可以在很大程度上提升开发效率。
在命令提示符界面中输入“scala”命令后,会进入scala命令行提示符状态(即“scala>”),可以在后面输入命令:
scala> 7*8+5
res0: Int = 61
如果想退出则使用命令“:quit”退出Scala解释器,如下所示:
scala>:quit
Scala入门HelloWorld
第一个程序总是从HelloWorld开始,那我们就使用scala来编写一个HelloWorld来简单的入门吧。
(1)通过HelloWorld程序了解Scala解释器的使用方法
在Shell命令提示符界面中输入“scala”命令后,会进入scala命令行提示符状态
scala>
(2)在Scala解释器中运行脚本文件
用“:load”命令导入脚本,一次运行多行程序:
使用文本编辑器(比如vim)创建一个代码文件Test.scala
//代码文件为/usr/local/scala/mycode/Test.scala
println("This is the first line")
println("This is the second line")
println("This is the third line")
在Scala REPL中执行如下命令运行该代码文件:
(3)通过编译打包的方式运行Scala程序
//代码文件为/usr/local/scala/mycode/HelloWorld.scala
object HelloWorld {
def main(args: Array[String]) {
println("Hello, world!");
}
}
使用scalac命令进行编译(编译的结果为Java字节码)
cd /usr/local/scala/mycode
scalac HelloWorld.scala
使用scala或者java命令运行字节码文件
scala -classpath . HelloWorld
java -classpath .:/usr/local/scala/lib/scala-library.jar HelloWorld
