1、Scala介绍(来自学习资料)
Spark是由Scala编写的,学Scala大部分就是为了学Spark,至少能读懂一些源码,但是主语言又是java,所以快速学习下Scala挺有必要的但是既然不是主语言也不打算做深究了。
Scala是一种多范式的编程语言,其设计的初衷是要集成面向对象编程和函数式编程的各种特性。Scala运行于Java平台(Java虚拟机),并兼容现有的Java程序。
1.优雅:这是框架设计师第一个要考虑的问题,框架的用户是应用开发程序员,API是否优雅直接影响用户体验。
2.速度快:Scala语言表达能力强,一行代码抵得上Java多行,开发速度快;Scala是静态编译的,所以和JRuby,Groovy比起来速度会快很多。
3. 能融合到Hadoop生态圈:Hadoop现在是大数据事实标准,Spark并不是要取代Hadoop,而是要完善Hadoop生态。JVM语言大部分可能会想到Java,但Java做出来的API太丑,或者想实现一个优雅的API太费劲。
2、jdk安装与环境变量配置
介绍的时候说了Scala程序也是运行在jvm之上的,所以需要先安装jdk配置好环境变量,虽然学java的同学第一步就得会这个,但是我还是希望给出完整的安装和配置环境变量流程。
去oracle官网去下载适合自己操作系统的jdk,下载后next,next安装成功。命令行输入java或者java -version出现以下提示表示安装成功了。
C:\Users\12706>java -version
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)
注:我都是使用默认的安装目录,如下
在命令行输入javac会出现‘javac’不是内部或外部命令,也不是可运行的程序或批处理文件,是因为没配置环境变量。
接下来配置环境
可以全在用户变量那里配也可以只在系统变量那里配置(此时所有用户都可以用)我这里就只在用户变量那里配置了
安装目录就是上面的安装目录,开始配置,三步配置三个地方
1)、配置JAVA_HOME:指定安装jdk的位置,C:\Program Files\Java\jdk1.8.0_151
2)、配置CLASSPATH: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
3)、配置PATH:PATH添加内容,%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin,注意:如果以前的后面没分号那么要用分号隔开再添加上面的内容
配置好了查看配置是否成功
命令行输入javac(如果安装好了那么输入java或者java –version就会提示)
C:\Users\12706>javac
用法: javac <options> <source files>
其中, 可能的选项包括:
-g 生成所有调试信息
-g:none 不生成任何调试信息
-g:{lines,vars,source} 只生成某些调试信息
-nowarn 不生成任何警告
-verbose 输出有关编译器正在执行的操作的消息
-deprecation 输出使用已过时的 API 的源位置
-classpath <路径> 指定查找用户类文件和注释处理程序的位置
-cp <路径> 指定查找用户类文件和注释处理程序的位置
...
到这里环境变量就配置好了
3、Scala编译器的安装
jdk安装配置好了之后接着安装Scala编译器
进入官网对应页面http://www.scala-lang.org/download/all.html选择Scala 2.10.6(学scala相信就是冲着spark的,毕竟spark就是scala来写的用的就是2.10.6版本),因为我这里是在windows上安装,所以点进去之后选择下载的是scala.msi
下载后安装即可(当然也可以选择scala-2.10.6.zip这时需要自己配下环境变量,所以选scala.msi就好了会自动给我们配置环境变量,就是path下添加scala可执行文件位置C:\Program Files (x86)\scala\bin)
安装好之后查看是否成功,命令行输入scala -version,显示下面内容表示安装成功了。
C:\Users\12706>scala -version
Scala code runner version 2.10.6 -- Copyright 2002-2013, LAMP/EPFL
输入scala即可进入scala的shell命令行,定义一个变量str试试
C:\Users\12706>scala
Welcome to Scala version 2.10.6 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_151).
Type in expressions to have them evaluated.
Type :help for more information.
scala> val str = "hello world"
str: String = hello world
如果是linux则下载scala-2.10.6.tgz,解压到指定目录下,然后配置下环境变量
使用vi /etc/profile进入编辑模式
最后添加
export SCALA_HOME=解压的scala的安装位置
export PATH=
PATH:
SCALA_HOME/bin
配置好了后source一下:命令,source /etc/profile
注:我还没在linux上弄,但是配置环境变量就是这样,配置storm,kafka环境变量都是这样。
4、IDEA安装Scala插件
因为我用的是idea所以我只演示这个来安装scala插件了。
打开idea,关闭自己当前的项目:file->close project,接着进入欢迎页,选择configure->plugins
接着选择在线安装,重启创建scala项目即可(maven项目都是可以的,我的建议是第一次使用,那么创建项目选择scala然后选择idea然后点击创建)
也可以离线安装,自己下载个相应的包,但是没下好的话插件包跟idea的版本会产生冲突导致不能安装。