>
>
❦
Contents
sbt Reference Manual
sbt 入门
安装 sbt
提示和技巧
在 Mac 上安装 sbt
通过第三方的包安装
通过 Macports 安装
通过 Homebrew 安装
通过通用的包安装
Typesafe Activator
手动安装
在 Windows 上安装 sbt
通过 Windows 安装包安装
通过通用的安装包安装
Typesafe Activator
手动安装
在 Linux 上安装 sbt
通过通用的安装包安装
Ubuntu和其他基于Debian的发行版
红帽企业版Linux和其他基于RPM的发行版
Gentoo
Typesafe Activator
手动安装
手动安装 sbt
Unix
Windows
Non-Cygwin
Cygwin 和标准的 Windows 终端
Cygwin 和 Ansi 终端
安装 Typesafe Activator (包含sbt)
Hello, World
创建一个有源码的项目目录
构建定义
设置 sbt 版本
目录结构
基础目录
源代码
sbt 构建定义文件
构建产品
配置版本管理
运行
交互模式
批处理模式
持续构建和测试
常用命令
Tab 自动补全
命令历史记录
.sbt 构建定义
构建定义的三种风格
什么是构建定义?
如何在 build.sbt 中定义设置
键(Keys)
类型(Types)
内置的 Keys
自定义 Keys
Task vs Setting keys
定义 tasks 和 settings
Tasks 和 Settings 的类型
sbt 交互模式中的 Keys
build.sbt 中的引入
添加依赖库
Scope
关于 Key 的所有故事
Scope 轴
通过 Project 轴划分 Scope
通过 Configuration 轴划分 Scope
通过 Task 轴划分 Scope
全局 Scope
代理
运行 sbt 时涉及 scope 下的 key
使用 scoped key 标识的例子
审查 scope
在构建定义中涉及 scope
指定 scope 的时机
更多关于设置
回顾:设置
追加值: += 和 ++=
依赖于其他 key 的值计算值
包含依赖的设置
当设置未定义时
依赖于其他 key 的值的 task
包含依赖的 task
追加依赖: += 和 ++=
库依赖
非托管依赖
托管依赖
libraryDependencies Key
通过 %% 方法获取正确的 Scala 版本
Ivy 修正
解析器
覆写默认的解析器
Per-configuration dependencies
多项目构建
多项目
公共设定
依赖
Aggregation
Classpath 依赖
configuration 粒度的 classpath 依赖
默认的 root 项目
交互式引导项目
通用代码
使用插件
什么是插件
声明一个插件
启用和禁用自动插件
全局插件
可用的插件
自定义设置和任务
定义一个键
执行任务
任务的执行语义
任务依赖项去重
清理任务
直接使用Scala
将它们转为插件
组织构建
sbt是递归的
在同一个地方跟踪依赖项
何时用 .scala 文件
定义自动插件
总结
sbt: 核心概念
附录
附录:Bare .sbt 构建定义
什么是bare .sbt 构建定义
(在 0.13.7 之前) 设置项必须以空行分隔
附录:.scala 构建定义
关联 build.sbt 和 Build.scala
交互模式中的构建定义项目
提醒:它总是不可变的
Contents in Depth
Combined Pages
Documentation
Download
Get Involved