前言
我们用IDEA创建Spark项目的时候,默认都是使用SBT作为构建工具的,那么SBT是个啥?
SBT是 Scala 的构建工具,全称是 Simple Build Tool, 类似 Maven 或 Gradle。
SBT 的野心很大,采用Scala编程语言本身编写配置文件,这使得它稍显另类,虽然增强了灵活性,但是对于初学者来说同时也增加了上手难度。
另外由于SBT默认从国外下载依赖,导致第一次构建非常缓慢。
设置全局仓库
默认从国外下载依赖,我们可以设置仓库的地址来加快构建速度。
设置仓库
如果是Windows系统,则进入CMD执行如下命令:
代码语言:javascript复制cd ~
mkdir .sbt
cd ..sbt
echo "">repositories
start repositories
如果是Mac或Linux系统,则进入Bash执行如下命令:
代码语言:javascript复制cd ~
mkdir .sbt
cd .sbt
vi repositories
然后创建 repositories 文件内容如下,并将文件拷贝到 .sbt 目录下,
代码语言:javascript复制[repositories]
local
aliyun: http://maven.aliyun.com/nexus/content/groups/public/
huaweicloud-maven: https://repo.huaweicloud.com/repository/maven/
central: http://repo1.maven.org/maven2/
忽略自身仓库
设置所有项目均使用全局仓库配置,忽略项目自身仓库配置
该参数可以通过 Java System Property 进行设置。在 SBT 中,有三种方法可以设置 Java System Property,可以根据需要自行选择。
方法一:修改SBT配置文件(推荐)
提醒一下, sbt-1.3.0/conf/ 目录下有两个配置文件, sbtconfig.txt 仅适用于 Windows 平台,而 sbtopts 仅适用于 Mac/Linux 平台。
针对 Windows 平台,打开 sbt-1.3.0/conf/sbtconfig.txt 文件,在末尾新增一行,内容如下:
代码语言:javascript复制-Dsbt.override.build.repos=true
针对 Mac/Linux 平台,打开 sbt-1.3.0/conf/sbtopts 文件,在末尾新增一行,内容如下:
代码语言:javascript复制-Dsbt.override.build.repos=true
方法二: 设置环境变量
在 Windows 上通过 set 命令进行设置,
代码语言:javascript复制set SBT_OPTS="-Dsbt.override.build.repos=true"
在 Mac/Linux 上使用 export 命令进行设置,
代码语言:javascript复制export SBT_OPTS="-Dsbt.override.build.repos=true"