0

我刚开始使用 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/
|~库/
|~项目/
| |~启动/
| | |~scala-2.7.7/
| | | |~库/
| | | | |-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 //这里
|
|+src/

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

D:\development\scala\SBEStudy>java -Xmx512M -jar "D:\development\.common\sbt-la
nch-0.7.4.jar" 更新
[信息] 针对 Scala 2.8.1 构建项目 SomeScalaProject 1.0
[信息] 使用 sbt.DefaultProject 和 sbt 0.7.4 和 Scala 2.7.7
[信息]
[信息] == 更新 ==
[警告] 未找到依赖配置,使用默认值。
[信息] :: 检索 :: nephilim.practice#scalabyexample_2.8.1 [同步]
[信息] 配置文件:[默认]
[信息] 0 个工件已复制,0 个已检索 (0kB/391ms)
[信息] == 更新 ==
[成功] 成功。
[信息]
[信息] 总时间:1 s,完成 2010. 12. 8 오후 7:14:39
[信息]
[信息] 总会话时间:2 s,完成 2010. 12. 8 오후 7:14:39
[成功] 构建成功完成。
> 重新加载
[信息] 针对 Scala 2.8.1 构建项目 SomeScalaProject 1.0
[信息] 使用 sbt.DefaultProject 和 sbt 0.7.4 和 Scala 2.7.7
> 你好
[错误] 不存在名为“hi”的操作。
[info] 对命令列表执行“帮助”或对可用列表执行“操作”
e 项目行动和方法。
4

1 回答 1

1

这是我的错误。:(
"MyProject.scala" 应该位于 /project/build 目录而不是 /project 目录下。

于 2010-12-09T00:10:52.877 回答