我有一些依赖Cats的库。让我们说新的Cats 0.4.0版本在其POM中具有错误的apiURL
值。我不希望我的API文档中断,因此我提供了使用apiMappings
的网址映射:
..
autoAPIMappings := false,
apiMappings ++= (fullClasspath in Compile).value.flatMap(
entry => entry.get(moduleID.key).map(entry -> _)
).collectFirst {
case (entry, module)
if module.organization == "org.typelevel" &&
module.name.startsWith("cats-") =>
entry.data
}.map(_ -> url("https://typelevel.org/cats/api/")).toMap,
apiURL := Some(url("https://travisbrown.github.io/iteratee/api/")),
...
这适用于我的API文档中的Cats类型的链接,但这意味着我丢失了标准库和其他依赖项中的类型的链接。但是,如果我将autoAPIMappings
更改为true
,我的自定义映射就会消失。
这对我没有任何意义 - 当然,似乎明确定义的映射不应该被从依赖POM中自动拉出的映射覆盖。
我可以使用autoAPIMappings
但是为特定的依赖关系覆盖它吗?
答案 0 :(得分:1)
这可能是因为为apiMappings
任务重新定义了doc
,并在设置autoAPImappings := true
时附加了映射,从而覆盖了您在全局范围内定义的映射。
这应该有效:
apiMappings in doc := ...