首页 > 解决方案 > SBT 中的 :: 和 / 有什么区别?

问题描述

我试图回忆它是否是test:compiletest::compile或者test/compile我在 SBT 上做某事时想要,当我突然意识到虽然我对使用哪个分隔符有一些直觉,但我并不清楚每个分隔符是什么用于。

那么,当在 sbt 控制台上输入任务时,我什么时候/为了什么使用:::以及/

标签: sbt

解决方案


不同的分隔符用于不同的范围轴

  • 单个冒号:遵循配置轴
  • 双冒号::跟随任务轴
  • 斜线/跟随子项目轴

然而,这些已通过斜线语法统一:统一 sbt shell 表示法和 build.sbt DSL讨论导致 统一 sbt shell 和 build.sbt 语法(范围路径语法)#3434,它在1.1.0斜线语法中发布

<project-id>/<config-ident>/intask/key

对应于

<project-id>/config:intask::key

因此,例如,

show root/Compile/compile/scalacOptions

对应于

show root/compile:compile::scalacOptions

相关问题:sbt 中的单冒号是什么意思


推荐阅读