加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

scala – 覆盖SBT中的自动API映射

发布时间:2020-12-16 08:53:29 所属栏目:安全 来源:网络整理
导读:我有一些依赖于 Cats的库.假设新的Cats 0.4.0版本在其POM中具有错误的apiURL值.我不希望我的API文档中断,所以我提供了apiMappings的URL映射: .. autoAPIMappings := false,apiMappings ++= (fullClasspath in Compile).value.flatMap( entry = entry.get(mo
我有一些依赖于 Cats的库.假设新的Cats 0.4.0版本在其POM中具有错误的apiURL值.我不希望我的API文档中断,所以我提供了apiMappings的URL映射:

..
  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但是为特定依赖项覆盖它吗?

解决方法

这可能是因为为doc任务重新定义了apiMappings,并在设置autoAPImappings:= true时附加映射,从而覆盖了您在全局范围中定义的映射.

这应该工作:

apiMappings in doc := ...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读