SBT构建Scala应用

【转帖】

原文地址:https://github.com/CSUG/real_world_scala/blob/master/02_sbt.markdown

尊重版权,尊重他人劳动成果,转帖请注明原文地址

使用SBT构建Scala应用SBT简介

SBT是Simple Build Tool的简称,如果读者使用过Maven,那么可以简单将SBT看做是Scala世界的Maven,虽然二者各有优劣,但完成的工作基本是类似的。

虽然Maven同样可以管理Scala项目的依赖并进行构建, 但SBT的某些特性却让人如此着迷,比如:

等等这些,都是SBT得以在Scala的世界里广受欢迎的印记。

SBT的发展可以分为两个阶段, 即SBT_0.7.x时代以及SBT_0.10.x以后的时代。

目前来讲, SBT_0.7.x已经很少使用, 大部分公司和项目都已经迁移到0.10.x以后的版本上来,最新的是0.12版本。 0.10.x之后的版本build定义采用了新的Settings系统,与最初0.7.x版本采用纯Scala代码来定义build文件大相径庭,虽然笔者在迁移之前很抵触(因为0.7.x中采用Scala定义build文件的做法可以体现很好的统一性),但还是升级并接纳了0.10.x以后的版本,并且也逐渐意识到, 虽然新的版本初看起来很复杂,但一旦了解了其设计和实现的哲学跟思路,就会明白这种设计可以更便捷的定义build文件。而且可选的build文件方式也同样运行采用Scala代码来定义,即并未放弃统一性的思想。

以上是SBT的简单介绍,如果读者已经急于开始我们的SBT之旅,,那么让我们先从SBT的安装和配置开始吧!

SBT安装和配置

SBT的安装和配置可以采用两种方式,一种是所有平台都通用的安装配置方式,另一种是跟平台相关的安装和配置方式,下面我们分别对两种方式进行详细介绍。

所有平台通用的安装配置方式

所有平台通用的安装和配置方式只需要两步:

下载sbt boot launcher本书采用最新的sbt0.12,其下载地址为;创建sbt启动脚本(启动脚本是平台相关的)如果是Linux/Unit系统,创建名称为sbt的脚本,并赋予其执行权限,并将其加到PATH路径中; sbt脚本内容类似于java -Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=384M -jar `dirname $0`/sbt-launch.jar “$@”, 可以根据情况调整合适的java进程启动参数;如果是Windows系统,则创建sbt.bat命令行脚本,同样将其添加到PATH路径中。 脚本内容类似于set SCRIPT_DIR=%~dp0 \n java -Xmx512M -jar “%SCRIPT_DIR%sbt-launch.jar” %*

以上两步即可完成sbt的安装和配置。

平台相关的安装配置方式

笔者使用的是Mac系统,安装sbt只需要执行brew install sbt即可(因为我已经安装有homebrew这个包管理器),使用macport同样可以很简单的安装sbt -sudo port install sbt;

如果读者使用的是Linux系统,那么这些系统通常都会有相应的包管理器可用,比如yum或者apt,安装和配置sbt也同样轻松,只要简单的运行yum install sbt或者apt-get install sbt命令就能搞定(当然,通常需要先将有sbt的repository添加到包管理器的列表中);

Windows的用户也可以偷懒,只要下载MSI文件直接安装,MSI文件下载地址为。

以上方式基本上囊括三大主流操作系统特定的安装和配置方式,其它特殊情况读者可以酌情处理 ^_^

SBT基础篇

既然我们已经安装和配置好了SBT,那就让我们先尝试构建一个简单的Scala项目吧!

Hello, SBT

在SBT的眼里, 一个最简单的Scala项目可以极简到项目目录下只有一个.scala文件,比如HelloWorld.scala:

今天又是美好的一天,我要展示出我优秀的一面。不必一味讨好别人

SBT构建Scala应用

相关文章:

你感兴趣的文章:

标签云: