sbt 的第一步
First steps in sbt
我只是想避免在 scalac <some file>
和 run <some class>
循环中缓慢启动和清理 JVM。也就是说,我要求一个可以加载一次然后多次编译和 运行 我的应用程序的环境。在#scala 频道,我得到了使用 sbt
的建议。
我曾经在#progfun 课程中使用过现成的 sbt 脚本,但从未自己编写过 sbt。它看起来像一个地狱。您如何轻松地为我的任务配置它?
% mkdir myproj
% cd myproj
% echo 'object MyProject extends App { println("hello world") }' > MyProject.scala
% sbt
[info] Loading global plugins from /Users/tisue/.sbt/0.13/plugins
[info] Set current project to myproj (in build file:/Users/tisue/myproj/)
> set scalaVersion := "2.11.7"
[info] Defining *:scalaVersion
[info] The new value will be used by *:Additional arguments for the presentation compiler., *:allDependencies and 13 others.
[info] Run `last` for details.
[info] Reapplying settings...
[info] Set current project to myproj (in build file:/Users/tisue/myproj/)
> session save
[info] Reapplying settings...
[info] Set current project to myproj (in build file:/Users/tisue/myproj/)
> run
[info] Updating {file:/Users/tisue/myproj/}myproj...
[info] Resolving jline#jline;2.12.1 ...
[info] Done updating.
[info] Compiling 1 Scala source to /Users/tisue/myproj/target/scala-2.11/classes...
[info] Running MyProject
hello world
[success] Total time: 2 s, completed Nov 18, 2015 9:46:26 PM
>
如果您愿意,可以将源代码放在 src/main/scala
下,而不是放在项目目录的根目录下——这也行。
session save
创建一个 build.sbt
文件,如下所示:
scalaVersion := "2.11.7"
如果您愿意,可以稍后在其中添加更多设置,可以使用 set
和 session save
,也可以直接编辑文件。
如果您没有明确设置 scalaVersion
,遗憾的是您将获得 Scala 2.10 而不是 2.11 :-(
我只是想避免在 scalac <some file>
和 run <some class>
循环中缓慢启动和清理 JVM。也就是说,我要求一个可以加载一次然后多次编译和 运行 我的应用程序的环境。在#scala 频道,我得到了使用 sbt
的建议。
我曾经在#progfun 课程中使用过现成的 sbt 脚本,但从未自己编写过 sbt。它看起来像一个地狱。您如何轻松地为我的任务配置它?
% mkdir myproj
% cd myproj
% echo 'object MyProject extends App { println("hello world") }' > MyProject.scala
% sbt
[info] Loading global plugins from /Users/tisue/.sbt/0.13/plugins
[info] Set current project to myproj (in build file:/Users/tisue/myproj/)
> set scalaVersion := "2.11.7"
[info] Defining *:scalaVersion
[info] The new value will be used by *:Additional arguments for the presentation compiler., *:allDependencies and 13 others.
[info] Run `last` for details.
[info] Reapplying settings...
[info] Set current project to myproj (in build file:/Users/tisue/myproj/)
> session save
[info] Reapplying settings...
[info] Set current project to myproj (in build file:/Users/tisue/myproj/)
> run
[info] Updating {file:/Users/tisue/myproj/}myproj...
[info] Resolving jline#jline;2.12.1 ...
[info] Done updating.
[info] Compiling 1 Scala source to /Users/tisue/myproj/target/scala-2.11/classes...
[info] Running MyProject
hello world
[success] Total time: 2 s, completed Nov 18, 2015 9:46:26 PM
>
如果您愿意,可以将源代码放在 src/main/scala
下,而不是放在项目目录的根目录下——这也行。
session save
创建一个 build.sbt
文件,如下所示:
scalaVersion := "2.11.7"
如果您愿意,可以稍后在其中添加更多设置,可以使用 set
和 session save
,也可以直接编辑文件。
如果您没有明确设置 scalaVersion
,遗憾的是您将获得 Scala 2.10 而不是 2.11 :-(