SBT
Posted 拱头
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SBT相关的知识,希望对你有一定的参考价值。
常用命令
clean | 删除所有生成的文件 (在 target 目录下)。 |
compile | 编译源文件(在 src/main/scala 和 src/main/java 目录下)。 |
test | 编译和运行所有测试。 |
console | 进入到一个包含所有编译的文件和所有依赖的 classpath 的 Scala 解析器。输入 :quit, Ctrl+D (Unix),或者 Ctrl+Z (Windows) 返回到 sbt。 |
run <参数>* | 在和 sbt 所处的同一个虚拟机上执行项目的 main class。 |
package | 将 src/main/resources 下的文件和 src/main/scala 以及 src/main/java 中编译出来的 class 文件打包成一个 jar 文件。 |
help <命令> | 显示指定的命令的详细帮助信息。如果没有指定命令,会显示所有命令的简介。 |
reload | 重新加载构建定义(build.sbt, project/*.scala, project/*.sbt 这些文件中定义的内容)。在修改了构建定义文件之后需要重新加载。 |
sbt语法:
lazy val root = (project in file(".")) 创建一个Project工程定义.返回一个sbt.Project类型 |
在.sbt文件中可以导入.scala文件,默认导入: import sbt._ import Process._ import Keys._ |
使用Project.settings修改Project的key |
添加依赖包: libraryDependencies += "org.apache.derby" % "derby" % "10.4.1.3" |
插件: 插件定义了各种keys,增加了sbt本身可设置的属性和可用指令. |
可以自定义sbt的SettingKey/TaskKey和InputKey,不过没有那么高级,暂时没什么用 可以通过以下网址查看sbt的所有keys定义: http://www.scala-sbt.org/0.13/sxr/sbt/Keys.scala.html#sbt.Keys.resolvers |
.sbt构建定义 构建定义有三种风格。这一部分主要就是将build.sbt文件怎么写,这个文件可以看做是一个.scala文件,只是加入例如一些默认行为.
1. 多工程 .sbt 构建定义 这个构建定义可以用来同时构建多个工程,是属于用途比较广的定义 示例代码: |
2. bare .sbt 构建定义 这个语法比较简介,是IDEA默认的形式,在编译简单的工程的时候,可以使用这种形式: 示例代码: |
3. .scala 构建定义 |
配置: sbt配置可以通过sbt-launch.jar,修改jar包中的/sbt/sbt.boot.properties进行配置.
以上是关于SBT的主要内容,如果未能解决你的问题,请参考以下文章
使用 sbt.version 1.2.8 发布到 nexus 的 Sbt 插件无法由使用 sbt.version >1.2.8 的 sbt 项目解决
sbteclipse:创建 build.sbt 和 plugins.sbt