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

scala – SBT:修复库依赖的驱逐警告是明智的

发布时间:2020-12-16 09:01:04 所属栏目:安全 来源:网络整理
导读:修复SBT驱逐警告信息是一个好主意吗? 通过将被驱逐的库的版本覆盖到最新版本.这会迫使SBT坚持使用被覆盖的版本吗? SBT是否仍会通知我们将来有更新的版本? 驱逐警告示例(SBT 0.13.13) [warn] There may be incompatibilities among your library dependenc
修复SBT驱逐警告信息是一个好主意吗?

通过将被驱逐的库的版本覆盖到最新版本.这会迫使SBT坚持使用被覆盖的版本吗? SBT是否仍会通知我们将来有更新的版本?

驱逐警告示例(SBT 0.13.13)

[warn] There may be incompatibilities among your library dependencies.
[warn] Here are some of the libraries that were evicted:
[warn]  * com.chuusai:shapeless_2.11:1.2.4 -> 2.3.2
[warn]  * org.postgresql:postgresql:9.4-1201-jdbc41 -> 9.4.1208.jre7
[warn]  * jline:jline:0.9.94 -> 2.12.1
[warn] Run 'evicted' to see detailed eviction warnings

通过在build.sbt末尾添加警告来删除警告.按照SBT文档Eviction warning中的说明进行操作

dependencyOverrides ++= Set(
  "org.postgresql" % "postgresql" % "9.4.1208.jre7","com.chuusai" %% "shapeless" % "2.3.2","jline" % "jline" % "2.12.1"
)

解决方法

如果这些警告是针对您在代码中直接使用的依赖项,则应该将升级后的版本添加到libraryDependencies中.

对于被驱逐的传递依赖(这些依赖项仅由您自己的依赖项直接使用),最好简单地保留警告.这为您提供了有关依赖项中可能存在的不兼容性的文档,并且可以帮助您调试由于此类不兼容性而导致的运行时问题.

请记住,设置dependencyOverrides只是隐藏警告,它不保证库与您设置的版本之间的兼容性.

(编辑:李大同)

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

    推荐文章
      热点阅读