无法添加自定义SBT操作

时间:2010-12-08 10:16:15

标签: sbt scalatest

我刚刚开始使用SBT。 要添加自定义操作,我执行了以下任务,并将该.scala文件作为SBT wiki指南添加到“项目”文件夹中。

//MyProject.scala
import sbt._

class HelloWorldProject(info: ProjectInfo) extends DefaultProject(info)
{
  lazy val hi = task { println("Hello World"); None }
}

添加scala src文件进行配置后,项目文件夹的布局如下所示。

/development/scala/SomeScalaProject/
|~lib/
|~project/
| |~boot/
| | |~scala-2.7.7/
| | | |~lib/
| | | | |-scala-compiler.jar [RO]
| | | | `-scala-library.jar [RO]
| | | `~org.scala-tools.sbt/
| | |   `~sbt/
| | |     `+0.7.4/
| | |~scala-2.8.1/
| | | `~lib/
| | |   |-scala-compiler.jar [RO]
| | |   `-scala-library.jar [RO]
| | `-sbt.boot.lock
| |-build.properties
| |
| `-MyProject.scala  //here
|
|+src/

但即使在“重新加载”或“更新”之后,在SBT中运行hi任务根本不可用。我错过了什么?

D:\development\scala\SBEStudy>java -Xmx512M -jar "D:\development\.common\sbt-la
nch-0.7.4.jar" update
[info] Building project SomeScalaProject 1.0 against Scala 2.8.1
[info]    using sbt.DefaultProject with sbt 0.7.4 and Scala 2.7.7
[info]
[info] == update ==
[warn] No dependency configuration found, using defaults.
[info] :: retrieving :: nephilim.practice#scalabyexample_2.8.1 [sync]
[info]  confs: [default]
[info]  0 artifacts copied, 0 already retrieved (0kB/391ms)
[info] == update ==
[success] Successful.
[info]
[info] Total time: 1 s, completed 2010. 12. 8 오후 7:14:39
[info]
[info] Total session time: 2 s, completed 2010. 12. 8 오후 7:14:39
[success] Build completed successfully.
> reload
[info] Building project SomeScalaProject 1.0 against Scala 2.8.1
[info]    using sbt.DefaultProject with sbt 0.7.4 and Scala 2.7.7
> hi
[error] No action named 'hi' exists.
[info] Execute 'help' for a list of commands or 'actions' for a list of availab
e project actions and methods.

1 个答案:

答案 0 :(得分:1)

这是我的错。 :(
 “MyProject.scala”应位于/ project / build目录下,而不是/ project目录下。