J'ajoute le référentiel Joda Time à SBT avec
libraryDependencies ++= Seq(
"joda-time" % "joda-time" % "2.1"
)
Ensuite, je l'utilise joyeusement comme ceci:
val ymd = org.joda.time.format.DateTimeFormat.forPattern("yyyyMMdd")
ymd.parseDateTime("20121212")
Mais, lorsque je compile le projet en SBT, je reçois un méchant:
[warn] Class org.joda.convert.FromString not found - continuing with a stub.
[warn] Caught: java.lang.NullPointerException while parsing annotations in /home/jack/.ivy2/cache/joda-time/joda-time/jars/joda-time-2.1.jar(org/joda/time/DateTime.class)
[error] error while loading DateTime, class file '/home/jack/.ivy2/cache/joda-time/joda-time/jars/joda-time-2.1.jar(org/joda/time/DateTime.class)' is broken
[error] (class java.lang.RuntimeException/bad constant pool tag 10 at byte 42)
J'ai essayé la version 2.0 de joda-time, mais j'obtiens la même erreur.
"joda-time" % "joda-time" % "2.1"
et"org.joda" % "joda-convert" % "1.2"
joda-convert
cela, toString pour Datetime estyyyy-mm-ddThh-mm-ss
. J'ai créé un projet simple avecjodatime
etjoda-convert
dépendances, donc je l'aiyyyy-mm-ddThh-mm-ss.000Z
.a.jar
qui contient a@B class A
, d'où@B
vient l' annotationb.jar
. En Java, vous pouvez utiliserA
dans votre code si vous n'en aveza.jar
pasb.jar
sur le chemin de construction; à Scala, vous ne pouvez pas.Je rencontrais un problème similaire:
L'ajout explicite d'une dépendance a
jcip-annotations-1.0.jar
résolu le problème.la source