IDEA 创建 scala sbt 项目

之前一直使用maven打包 java项目,所以一直很懒惰,还打算使用maven来管理scala项目,结果昨天晚上 就一直被项目的build卡住了,卡了三个小时,非常浪费时间。

今天来到公司,感慨,既然 sbt是scala的御用打包管理工具,就用sbt,虽然比较抵触,但是不学是不可能的,sbt按道理也是比较简单的。后来在使用中 确实不是 很难

在使用IDEA  创建基于sbt 的scala项目中,确实遇到里一些小的问题,但是如果处理好了,这些都是非常简单,迅速进入到开发中。

中间 遇到的问题 ,

1.sbt首次时候 ,下载 解压  配置环境 变量,首次创建sbt项目,sbt会下载很多依赖,大概需要二十分钟左右,再下次创建sbt 会非常快


IDEA 创建 scala sbt 项目_第1张图片

默认情况下 jdk  sbt  scala sdk 都会被统统引入进来,


IDEA 创建 scala sbt 项目_第2张图片

假如 没有正确引入,可以在菜单栏,【File】-【Project Structure】设置 【Global Libraries】和【Modeles】【Libraries】从新引入对应的sdk



IDEA 创建 scala sbt 项目_第3张图片


IDEA 创建 scala sbt 项目_第4张图片
IDEA 创建 scala sbt 项目_第5张图片


IDEA 创建 scala sbt 项目_第6张图片


IDEA 创建 scala sbt 项目_第7张图片

2.引入依赖,下载失败,在引入一些 springframework的jar包,在build.sbt,填写了依赖项,但是并没有开始自动下载相关jar 包,后来在sbt的命令行交互环境compile中发现,springframework 5 版本下载失败,但是springwork 4的版本是可以下载,这种情况要么修改 sbt 仓库地址,要么就是选择可以下载的内容。另外为了 方便 sbt的 编译 打包  自动下载依赖,建议 开启 sbt view  ,在 菜单栏的 view 中选择 tool window 选择  sbt,即可开启。并且自动同步 下载依赖会比较方便


IDEA 创建 scala sbt 项目_第8张图片

另外 开启 配置   sbt  Task ,设置 编译 compile ,IDEA右上角部分 ,选择 Edit Configurations,在弹层中的左上角 点击 绿色的加号,选择 SBT Task,Tasks:对应sbt命令,编译就选择填写 【compile】 ,【working directory】 选择对应的 scala的类文件,其他如果没有额外配置可以不动,选择 Apply,即可使用。


IDEA 创建 scala sbt 项目_第9张图片

如何运行一个Scala的文件,有时候会错误的选择 scala console 或者scala script,但是都不对,应该是选择Application ,这个可以在 Edit Configurations 中选择【Application】,配置 【Main class】对应的类文件,和【working directory】,【use classpath of module】,apply 即可启用,


IDEA 创建 scala sbt 项目_第10张图片

另外简单的就是 在项目文件目录中,右击对应的类文件,选择【run  **.scala】,切记 不要选择有 美元$ 符号的,否则便是java编译,会出现需要static method。

正常的基于sbt 的scala 项目 的文件目录结构:


IDEA 创建 scala sbt 项目_第11张图片

另外是 代码层次的 

比如 继承   比如引入其他jar包

子类快速实现 父类的方法,在子类 类名红线处 ,alt + enter回车即可  快速实现,

父類


IDEA 创建 scala sbt 项目_第12张图片
父類

子類


IDEA 创建 scala sbt 项目_第13张图片

有時 import 的 類的類路徑  import 語句是置灰的,說明引入時是有問題,需要 加引號或者其他大括號之類的


另外 是調試  Debug 狀態,項目文件目錄  類文件  右鍵  Debug 即可

F8 往下走,F7進入方法內部

另外熟練常用的IDEA的一些快捷鍵非常有幫助

在新建的scala 項目中 嘗試 了  for循環遍歷,if 判斷, 一些 函數式 lamabda 表達式。

代碼只有長寫才有可能熟練

碰见 jvm不能运行,应该是sbt 的jvm 的路径错了, Terminal中 which java 找到 java 的全路径,一般就是sbt的jvm路径默认错了,少一个文件夹

idea  Cannot run program "/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/bin/java" (in directory


IDEA 创建 scala sbt 项目_第14张图片


你可能感兴趣的:(IDEA 创建 scala sbt 项目)