Saya menambahkan repositori Joda Time ke SBT dengan
libraryDependencies ++= Seq(
"joda-time" % "joda-time" % "2.1"
)
Lalu saya dengan riang menggunakannya seperti ini:
val ymd = org.joda.time.format.DateTimeFormat.forPattern("yyyyMMdd")
ymd.parseDateTime("20121212")
Tapi, ketika saya mengkompilasi proyek di SBT, saya mendapatkan pesan yang tidak menyenangkan:
[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)
Saya mencoba Joda-time versi 2.0, tetapi mendapatkan error yang sama.
"joda-time" % "joda-time" % "2.1"
dan"org.joda" % "joda-convert" % "1.2"
joda-convert
toString untuk Datetimeyyyy-mm-ddThh-mm-ss
. Saya telah membuat proyek sederhana denganjodatime
danjoda-convert
ketergantungan, jadi di dalamnya saya punyayyyy-mm-ddThh-mm-ss.000Z
.a.jar
yang berisi@B class A
, dari mana anotasi@B
berasalb.jar
. Di Jawa, Anda dapat menggunakanA
dalam kode Anda jika Anda memilikia.jar
tanpab.jar
di jalan membangun; di Scala, Anda tidak bisa.Saya mengalami masalah serupa:
[warn] Class net.jcip.annotations.NotThreadSafe not found - continuing with a stub. [warn] Caught: java.lang.NullPointerException while parsing annotations in ~/.ivy2-p2/cache/org.opensaml/xmltooling/jars/xmltooling-1.3.4.jar(org/opensaml/xml/util/IDIndex.class) [error] error while loading AttributeMap, class file '~/.ivy2-p2/cache/org.opensaml/xmltooling/jars/xmltooling-1.3.4.jar(org/opensaml/xml/util/AttributeMap.class)' is broken [error] (class java.lang.RuntimeException/bad constant pool index: 0 at pos: 12058)
Menambahkan dependensi secara eksplisit
jcip-annotations-1.0.jar
menyelesaikan masalah.sumber