【发布时间】:2017-10-10 20:51:49
【问题描述】:
我收到此错误:
[warn] Class org.joda.convert.FromString not found - continuing with a stub.
但在 build.sbt 中明确包含:
libraryDependencies += "joda-time" % "joda-time" % "2.9.6"
libraryDependencies += "org.joda" % "joda-convert" % "1.8.1"
这似乎是大多数遇到此问题的人的解决方法,例如。 Class broken error with Joda Time using Scala 。 运行依赖图我看到驱逐:
[info] +-joda-time:joda-time:2.3 (evicted by: 2.9.6)
[info] +-joda-time:joda-time:2.8.2 (evicted by: 2.9.6)
[info] +-joda-time:joda-time:2.9.6
[info] +-org.joda:joda-convert:1.8.1
[info] +-org.scala-lang.modules:scala-xml_2.11:1.0.5 [S]
[info]
[success] Total time: 10 s, completed May 11, 2017 6:38:09 PM
但似乎最终最新版本获胜,并且看起来包含转换。测试运行良好,日期转换也是如此。
现在,我有点不知所措。我应该如何在 sbt 中修复/调试这个问题?
【问题讨论】:
-
你能把joda time版本降级到2.1吗
libraryDependencies += "joda-time" % "joda-time" % "2.1" libraryDependencies += "org.joda" % "joda-convert" % "1.8.1" -
@RameshMaharjan 不幸的是它也没有用..
-
@RameshMaharjan 好吧,不,由于 com.typesafe.play:play-json_2.11:2.6.0-M6,它仍然被覆盖到 2.9.6。接下来将尝试依赖覆盖
-
1) 您已经从传递依赖中获得了 joda,因此可以使用它。问题是 2 个不同的可能不兼容的版本仍然存在。 2)排除传递依赖。但这是图书馆内的某种地雷炸弹。 3)如果可能的话,使用 java 8 time 包(恕我直言最好的方法)。
-
是的,它仍然无法正常工作,甚至强制对 joda 和 convert 进行依赖覆盖。我现在将尝试排除传递依赖项。@Zernike 在这一点上,现在不可能在所有项目模块中替换 joda。