【发布时间】:2023-03-10 00:41:01
【问题描述】:
为了更好地理解 SBT,我阅读了 Ivy。然而,有一件事让我感到困惑:在 Ivy 中,模块的配置决定了如何使用或构建它。我只是想知道sbt中的配置集是否固定:编译,测试,运行,提供(?),全局(?),默认(?)?
如果可以设置一个新的,你会怎么做?
发布工件的默认配置是什么?
如何设置产品工件配置不是默认配置?如何删除默认的?
有没有办法列出可用的配置?
【问题讨论】:
为了更好地理解 SBT,我阅读了 Ivy。然而,有一件事让我感到困惑:在 Ivy 中,模块的配置决定了如何使用或构建它。我只是想知道sbt中的配置集是否固定:编译,测试,运行,提供(?),全局(?),默认(?)?
如果可以设置一个新的,你会怎么做?
发布工件的默认配置是什么?
如何设置产品工件配置不是默认配置?如何删除默认的?
有没有办法列出可用的配置?
【问题讨论】:
如果可以设置新的,那怎么可能?
是的。见define custom configuration in sbt。
发布工件的默认配置是什么?
包含src/main 代码的主要配置称为Compile。
您如何设置产品工件配置而不是默认配置?如何删除默认的?
您可以使用publishArtifact 键控制要在发布中包含哪些配置。见Artifacts。
有没有办法列出可用的配置?
> show ivyConfigurations
[info] List(compile, runtime, test, provided, optional, compile-internal, runtime-internal, test-internal, plugin, sources, docs, pom, scala-tool)
另请参阅Scopes 以了解配置轴范围的说明和Global。
【讨论】: