在IDEA中使用SBT构建工具创建SCALA项目
最近学习SCALA语言,用到IDEA创建以sbt构建的项目,其中遇到很多问题,现在把我建项目的步骤和解决办法做如下总结,希望帮助后来人少走弯路。
一,环境
●win10 ●jdk1.8 ●scala 2.12.0 ●sbt1.1.2
idea scala 插件地址https://plugins.jetbrains.com/plugin/1347-scala
sbt 构建工具下载https://www.scala-sbt.org/download.html
scala 下载 http://www.scala-lang.org/download/all.html
环境变量 SCALA_HOME = D:\develop\scala-2.12.0
SBT_HOME = D:\develop\sbt
path = %SCALA_HOME%\bin;%SBT_HOME%\bin;
环境变量设置好了后请自行检测,这里不再做说明
sbt 设置仓库地址步骤:
在SBT_HOME\sbt\conf 下新建repository.properties 文件,内容如下
[repositories]
local
ali: http://maven.aliyun.com/nexus/content/repositories/central/
修改sbtconfig.txt文件,加上如下内容:
# Set the extra SBT options
-Dsbt.log.format=true
-Dsbt.boot.directory=D:/develop/sbt/.sbt/boot
-Dsbt.ivy.home=D:/develop/sbt/.ivy2
-Dsbt.global.base=D:/develop/sbt/.sbt
-Dsbt.repository.config=D:/develop/sbt/conf/repository.properties
这些是设置sbt下载项目依赖目录。
到此,环境都准备完毕
二,在idea中创建项目
1.选择IDEA菜单File->New->Project
2.点击Next,目前idea使用的sbt版本为0.13.X系列与我们下载的1.1.2版本不同,这里不要紧,选择最新的版本就好了,我们等下在项目中修改过来就好了。(不知道为什Idea使用的sbt版本和官网版本为两个系列)
3.创建如下目录结构
4.修改project目录下build.properties文件中sbt.version为1.1.2
5.选择File->project Structure
左边选择Modules 右边选择Sources,将src目录Mark as Sources后就可以在src下新建Scala类了
然后右边继续选择Dependencies,点击+号,添加Scala类库
6.修改sbt构建设置,其中VM parameters配置为
-Xmx512M
-XX:MaxPermSize=256m
-XX:ReservedCodeCacheSize=128m
-Dsbt.log.format=true
-Dsbt.ivy.home=D:/develop/sbt/.ivy2
-Dsbt.global.base=D:/develop/sbt/.sbt
-Dsbt.repository.config=D:/develop/sbt/conf/repository.properties
好了到这里结束后,就可以新建一个类测试下环境是否运转。在src->scala包下新建Main文件,如下:
package main.scala /** * Created by Administrator on 2018/4/5. */ object Main extends App { val ages = Seq(42, 75, 29, 64) println(s"The oldest person is ${ages.max}") }
在文件上选中,右键菜单选择run Main,运行成功。结果如下:
----------------------------------------------------------------------------------------------------------------------------------
关于新建sbt task的步骤和设置
1.选择run->edit configuration,点击左上角+号,选择sbt task,
tasks输入:~run,
VM parameters输入:
-Xms512M
-Xmx1024M
-Xss1M
-XX:+CMSClassUnloadingEnabled
-Dsbt.log.format=true
-Dsbt.boot.directory=D:/develop/sbt/.sbt/boot
-Dsbt.ivy.home=D:/develop/sbt/.ivy2
-Dsbt.global.base=D:/develop/sbt/.sbt
-Dsbt.repository.config=D:/develop/sbt/conf/repository.properties