【发布时间】:2017-10-20 21:01:56
【问题描述】:
我与 sbt(Scala 构建工具)配合得很好。如果你的代码只有小问题,那很容易。
现在,在添加了一个主要功能之后,我的大部分代码都被破坏了,我似乎对依赖关系的方式感到困惑。我可以帮助它,先编译基本模块,但它似乎没有让我这样做。
它的帮助系统……臭名昭著。
> help compile
Compiles sources.
是的,好吧。我猜到了。
我想听到的是:我如何只编译 - 比如说 - src/module/A.scala。
这甚至是不可能的(你好,make,永远不要放弃你!)。至少我在 Internet 上找不到任何将sbt compile 应用于单个文件的参考。
我在命令行提示符下使用 sbt,而不是 IDE。
更新:
这是我的错。 :/ 将一个源文件拆分为多个,但忘记将package 子句复制到每个新文件中。哎呀。
将保持此打开状态一段时间,因为只编译一个文件(即像 sbt compile filename 这样的文件)不会是一件坏事。
【问题讨论】:
-
能否添加sbt的相关输出?出了什么问题?你试过先执行
clean吗? -
有大约 5 页的 sbt 输出,我不习惯把它放在这里。通常,sbt 似乎从最不依赖的部分开始,但现在错误是相互交叉引用的,所以很难说,从哪里开始解开整体。可能是我的错,但该工具现在确实妨碍了理解。即 StationBase:没有找到 StateBase; StateBase:没有找到 StationBase(因为目前都没有编译)。
-
您可以将输出粘贴到pastie.org 并在此处链接。
-
更有趣的是,
sbt --help甚至不会将compile列为命令,至少在我的 sbt 1.4.7 上是这样。必须做一些互联网搜索才能找到答案,因为指南提到的唯一内容是sbt run。所以你的问题已经提供了一个有用的答案。