windows下SBT的安装与使用
项目构建工具是项目开发中非常重要的一个部分,充分利用好它能够极大的提高项目开发的效率。在学习SCALA的过程中,我遇到了SBT(Simple Build Tool), SBT是SCALA 平台上标准的项目构建工具
,当然你要用它来构建其他语言的项目也是可以的
。SBT 没有Maven那么多概念和条条框框,但又比IVY要更加灵活,可以认为是一个精简版的Maven
吧。
1.下载
https://www.scala-sbt.org/download.html
sbt-1.1.4.msi
2.安装
直接下一步下一步,安装,然后默认会添加到系统的环境变量中,如果没有自己可以添加
3.IDEA新建一个Sbt项目
新建的如图
然后我们新建一个测试类
package com.lcc
object hellow {
def main(args: Array[String]) {
println("Hello World!")
}
}
运行测试
J:\00-IDEA\work\hellow>J:\Sbt\install\bin\sbt run
。。。。。
。。。。。。
新目录 3 J:\Sbt\install\lib\local-preloaded\org.spire-math\jawn-parser_2.12\0.10.4\ivys\
100% 新文件 2769 ivy.xml
100% 新文件 32 ivy.xml.md5
100% 新文件 40 ivy.xml.sha1
新目录 3 J:\Sbt\install\lib\local-preloaded\org.spire-math\jawn-parser_2.12\0.10.4\jars\
100% 新文件 74239 jawn-parser_2.12.jar
100% 新文件 32 jawn-parser_2.12.jar.md5
100% 新文件 40 jawn-parser_2.12.jar.sha1
------------------------------------------------------------------------------
总数 复制 跳过 不匹配 失败 其他
目录: 355 355 0 0 0 0
文件: 495 495 0 0 0 0
字节: 48.70 m 48.70 m 0 0 0 0
时间: 0:02:16 0:00:25 0:00:00 0:01:50
速度: 2019345 字节/秒。
速度: 115.547 MB/分钟。
结束时间: 2018年4月17日 10:08:58
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0
[info] Loading settings from plugins.sbt ...
[info] Loading project definition from J:\00-IDEA\work\hellow\project
[info] Loading settings from build.sbt ...
[info] Set current project to hellow (in build file:/J:/00-IDEA/work/hellow/)
[info] Updating ...
[info] downloading https://repo1.maven.org/maven2/org/scala-lang/scala-library/2.12.5/scala-library-2.12.5.jar ...
[info] downloading https://repo1.maven.org/maven2/org/scala-lang/scala-compiler/2.12.5/scala-compiler-2.12.5.jar ...
[info] downloading https://repo1.maven.org/maven2/org/scala-lang/scala-reflect/2.12.5/scala-reflect-2.12.5.jar ...
[info] [SUCCESSFUL ] org.scala-lang#scala-reflect;2.12.5!scala-reflect.jar (3224ms)
[info] [SUCCESSFUL ] org.scala-lang#scala-compiler;2.12.5!scala-compiler.jar (5435ms)
[info] [SUCCESSFUL ] org.scala-lang#scala-library;2.12.5!scala-library.jar (7481ms)
[info] Done updating.
[info] Compiling 1 Scala source to J:\00-IDEA\work\hellow\target\scala-2.12\classes ...
[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.5. Compiling...
[info] Compilation completed in 53.072s.
[info] Done compiling.
[info] Packaging J:\00-IDEA\work\hellow\target\scala-2.12\hellow_2.12-0.1.jar ...
[info] Done packaging.
[info] Running com.lcc.hellow
Hello World!
[success] Total time: 103 s, completed 2018-4-17 10:11:22
最后成功打印Hello World!
4.详细说明
J:\00-IDEA\work\hellow>J:\Sbt\install\bin\sbt
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0
[info] Loading settings from plugins.sbt ...
[info] Loading project definition from J:\00-IDEA\work\hellow\project
[info] Loading settings from build.sbt ...
[info] Set current project to hellow (in build file:/J:/00-IDEA/work/hellow/)
[info] sbt server started at local:sbt-server-6b1e3137e27e680a0ddb
sbt:hellow> run
[info] Running com.lcc.hellow
Hello World!
[success] Total time: 6 s, completed 2018-4-17 10:29:02
sbt:hellow>
在这个例子中,sbt 完全按照约定工作。sbt 将会自动找到以下内容:
项目根目录下的源文件
src/main/scala 或 src/main/java 中的源文件
src/test/scala 或 src/test/java 中的测试文件
src/main/resources 或 src/test/resources 中的数据文件
lib 中的 jar 文件
默认情况下,sbt 会用和启动自身相同版本的 Scala 来构建项目。 你可以通过执行 sbt run 来运行项目或者通过 sbt console 进入 Scala REPL。sbt console 已经帮你 设置好项目的 classpath,所以你可以根据项目的代码尝试实际的 Scala 示例。
3.1 构建定义
大多数项目需要一些手动设置。基本的构建设置都放在项目根目录的 build.sbt 文件里。 例如,如果你的项目放在 hello 下,在 hello/build.sbt 中可以这样写:
注意:
设置 sbt 版本
你可以通过创建 hello/project/build.properties 文件强制指定一个版本的 sbt。在这个文件里,编写如下内容来强制使用 0.13.16:
lazy val root = (project in file("."))
.settings(
name := "hellow",
version := "1.0",
scalaVersion := "2.12.2"
)
bt 在不同的 release 版本中是 99% 兼容的。但是在 project/build.properties 文件中设置 sbt 的版本仍然能避免一些潜在的混淆。
运行试试
sbt:hellow> run
[info] Running com.lcc.hellow
Hello World!
[success] Total time: 7 s, completed 2018-4-17 10:33:05
sbt:hellow>
4.常用命令
其它常见命令
Tables | Cool |
---|---|
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 这些文件中定义的内容)。在修改了构建定义文件之后需要 重新加载。 |
参考:https://www.scala-sbt.org/0.13/docs/zh-cn/Getting-Started.html
推荐阅读
-
windows下SBT的安装与使用
-
windows下zookeeper的安装配置与简单部署
-
Linux下apache+resin的安装与部署
-
Windows下Python2与Python3两个版本共存的方法详解
-
bitbucket以及sourcetree的安装与配合使用 博客分类: GIT
-
bitbucket以及sourcetree的安装与配合使用 博客分类: GIT
-
windows下安装、卸载mysql服务的方法(mysql 5.6 zip解压版安装教程)
-
python虚拟环境virualenv的安装与使用
-
windows下nodejs开发环境的安装与配置
-
详解Windows Server 2012下安装MYSQL5.7.24的问题