[Scala]Scala安装以及在IDEA中配置Scala
一 Scala简述
Scala (斯卡拉)是一门多范式(multi-paradigm)的编程语言。
这里所谓的范式,指的是编写程序的方式,不同的编程语言,方式也不尽相同,也就意味着Scala编程语言是融合了多种不同编程方式的语言。所以Scala语言的设计初衷是要集成面向对象编程和函数式编程的各种特性。
二 Scala与Java的关系
创始人马丁·奥德斯基(Martin Odersky)是编译器及编程的狂热爱好者,长时间的编程之后,希望发明一种语言,能够让写程序这样的基础工作变得高效,简单,且令人愉悦。所以当接触到JAVA语言后,对JAVA这门便携式,运行在网络,且存在垃圾回收的语言产生了极大的兴趣,所以决定将函数式编程语言的特点融合到JAVA中,由此发明了两种语言(Pizza & Scala),这两种语言极大地推动了Java编程语言的发展。且现在主流JVM的javac编译器就是马丁·奥德斯基编写出来的,并被JAVA编程人员广泛的使用,所以Scala语言起源于Java,却推动着Java的发展,它们是相辅相成的。
正是基于上面的原因,所以Scala源代码(.scala)会被编译成Java字节码(.class),然后运行于JVM之上,并可以调用现有的Java类库,实现两种语言的无缝对接,因此,对于已经掌握JAVA语言的我们来讲,学习起来一定会略显轻松。
Scala是一门以java虚拟机(JVM)为目标运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言。(运行之前一定知道类型是什么)
三 Scala安装与配置
3.1 安装
Scala需要Java运行时库,安装Scala需要首先安装JVM虚拟机,推荐安装JDK1.8。
在http://www.scala-lang.org/ 下载Scala2.11.8程序安装包
根据不同的操作系统选择不同的安装包,下载完成后,将安装包解压到安装目录。将scala安装目录下的bin目录加入到PATH环境变量:
SCALA_HOME:
|
SCALA_HOME= D:\scala-2.11.8 |
PATH:
|
在PATH变量中添加:%SCALA_HOME%\bin |
安装好scala并配置好PATH环境变量之后,就可以在终端中输入“scala”命令打开scala解释器:
注意:该操作Windows和Linux配置流程是一样的。可以参考Java的JDK的配置过程。
到此为止,Scala的安装已经成功。
3.2 Scala的REPL
上面打开的scala命令行窗口,我们称之为REPL,是指:Read->Evaluation->Print->Loop,也称之为交互式解释器。类似于MySQL的默认客户端工具
在命令行窗口中输入scala指令代码时,解释器会读取指令代码并计算(Evaluation)对应的值,然后将结果打印(Print)出来,接着循环等待用户输入指令(Loop)。
从技术上讲,这里其实并不是一个解释器,而是指令代码被快速的编译成Java字节码并被JVM加载执行。最终将执行结果输出到命令行中。
3.3 配置IDEA
1) 打开IDEA工具,如图:点击Configure

2) 点击Plugins

3) 点击Install plugin from disk

4) 选择scala的plugins

5) 此时会显示一个Scala的条目,在右侧点击Restart IntelliJ IDEA

6) 创建Maven项目
创建的maven项目默认是不支持scala的,需要为项目添加scala的framework,如图:

在这里选择Scala后,在右边的Use library中配置你的安装目录即可,最后点击OK。
7) 在项目的目录结构中,创建scala文件夹,并标记为source

8) 以上配置都完成后,就可以在scala上点击右键创建scala class了
四 Scala示例
4.1 IDEA运行HelloScala程序
1) 在scala上右键,创建scala object
2) 编写代码如下:
|
object HelloScala { def main(args: Array[String]): Unit = { println("Hello Scala") // 打印字符串 } } |
右键Run HelloScala,如图:

4.2 Scaladoc
如果想要了解Scala中提供了哪些类,哪些方法,可以参考Scala提供的doc文档
[Scala]Scala安装以及在IDEA中配置Scala的更多相关文章
- IDEA中配置Scala开发编译环境
安装JDK 因为Scala是运行在JVM平台上的,所以安装Scala之前要安装JDK. 安装Scala Windows安装Scala编译器 访问Scala官网http://www.scala-lang ...
- Maven学习(一) -- 安装Maven及Eclipse中配置Maven
标签(空格分隔): 学习笔记 本文环境:Windows7, JDK1.7.0_76 安装及配置Maven环境变量 需要电脑中已经有Java环境 在控制台中输入:echo %JAVA_HOME%看是否能 ...
- windows上安装maven及eclipse中配置maven
本地安装与配置: 1.jdk 在cmd中运行 Java -version 2.下载maven包 https://maven.apache.org/download.cgi下载最新版的Maven程序:( ...
- Maven插件的简介,安装及在eclipse中配置
1.Maven简介 1.Maven介绍 Maven是一个基于项目对象模型(POM:project object model)的概念的纯java开发的开源的项目管理工具.Maven把我们的工程抽像一个对 ...
- maven安装与在eclipse中配置
需要准备 eclipse maven压缩包 : http://maven.apache.org/download.cgi 1 解压maven压缩包 2 在系统变量中新建变量MAVEN_HOME,值为 ...
- (kate)win8-64位系统下opencv-2.4.3的安装以及在visual_studio2010中配置
环境: 操作系统:window8.1 64bit Opencv版本:OPencv-2.4.3 VS版本:vs 2010 一.安装Opencv 1.Opencv官网http://opencv.org/ ...
- Windows下安装Python及Eclipse中配置PyDev插件
最近开始接触Python,鉴于之前安装Java的教训,决定这次边安装Python,边写下历程,供日后反复使用. 在Python官网http://www.python.org/下载Python版本,鉴于 ...
- 安装Maven及Eclipse中配置Maven
下载maven版本: 1.进入官网:http://maven.apache.org/download.cgi ,下载编译后的maven版本:如图下: 2.创建一个目录,把下载的maven压缩包,进 ...
- Scala安装后,在IDEA中配置
IDEA中配置Scala 一.设置Module 二.添加Scala的SDK 三.寻找本地scala安装路径 四.测试是否可以新建有Scala Class 五.踩坑填坑记录 5.1:Error:(4, ...
随机推荐
- 01、JDBC连接
① 下载JDBC-MySQL数据库驱动 链接:https://pan.baidu.com/s/1KtSZZ5hXlxu2QrmsXg3lkA 提取码:1pbl ② 加载JDBC-MySQL数据库驱动 ...
- 浅谈Java的内存模型以及交互
本文的内存模型只写虚拟机内存模型,物理机的不予描述. Java内存模型 在Java中,虚拟机将运行时区域分成6中,如下图: 程序计数器:用来记录当前线程执行到哪一步操作.在多 ...
- Windows10+YOLOv3实现检测自己的数据集(1)——制作自己的数据集
本文将从以下三个方面介绍如何制作自己的数据集 数据标注 数据扩增 将数据转化为COCO的json格式 参考资料 一.数据标注 在深度学习的目标检测任务中,首先要使用训练集进行模型训练.训练的数据集好坏 ...
- 我在用的翻译软件 -> 微软翻译+网易有道词典+谷歌翻译
Windows网页翻译 因为微软翻译相对来说翻译网页更为准确,我也喜欢用谷歌的Chrome浏览器,但是我没找到微软翻译的扩展,这里只能放弃 这个需要配合Microsoft Edge浏览器进行使用,也是 ...
- 2.linux系统基础笔记(延时操作、实时系统中的定时器、事件)
延时操作 延时操作是操作系统中经常遇到的一种情形.延时的原因很多,有的时候是为了等待外设芯片处理结束,有的时候是为了暂时释放cpu的使用权,有的就是为了希望在一段时间获取资源,如果没法在单位时间内获取 ...
- JavaScript事件属性event.target和currentTarget 属性的区别。
event.target 获取的是触发事件的标签元素 event.currentTarget 获取到的是发起事件的标签元素 一.事件属性:event.target target事件委托的定义:本来该自 ...
- UWP 使用新版画中画 FontIcon —— 如何使用自定义字体 —— 简单分析Windows Calculator源代码
微软在新版UWP计算器中加入了一个“置顶”功能,它相当于我们之前看视频的“画中画”一样. 点击后窗体置顶,同时可以进行其他任务. 有的小伙伴说,不就是一个图标吗,去 Segoe MDL2 图标 把图标 ...
- 2.RF中scalar,list和dict变量的定义和取值
$:定义scalar变量:@定义list变量:&定义dict变量: $还用来取值,包含scalar, list和dict变量,如下example所示 1.定义scalar变量:set vari ...
- php函数fsockopen的使用
函数说明:fsockopen — 打开一个网络连接或者一个Unix套接字连接 语法: resource fsockopen ( string $hostname [, int $port = -1 [ ...
- ArcGIS Engine空间查询功能的实现(QueryFilterClass+SpatialFilterClass)
地图中包含大量的信息,为了快速地了解所需信息,必须借助为空间数据专门编写的空间查询功能. 空间查询主要有两种类型: 基于属性的查询,也称为属性查询. 基于空间位置的查询,也称为空间查询. 查询类的基本 ...