我需要在Joda时间支持SystemV个时区。就像在so answer中提到的那样,我在对SystemV数据文件中的行进行注释后尝试重新编译。但是在编译它时会给出这个异常:< / p>
[java] Exception in thread "main" org.joda.time.IllegalFieldValueException: Value 292278995 for year must be in the range [-292275054,292278993]
[java] at org.joda.time.field.FieldUtils.verifyValueBounds(FieldUtils.java:217)
[java] at org.joda.time.chrono.BasicYearDateTimeField.set(BasicYearDateTimeField.java:82)
[java] at org.joda.time.chrono.BasicYearDateTimeField.add(BasicYearDateTimeField.java:63)
[java] at org.joda.time.tz.DateTimeZoneBuilder$OfYear.next(DateTimeZoneBuilder.java:575)
[java] at org.joda.time.tz.DateTimeZoneBuilder$Recurrence.next(DateTimeZoneBuilder.java:761)
[java] at org.joda.time.tz.DateTimeZoneBuilder$Rule.next(DateTimeZoneBuilder.java:863)
[java] at org.joda.time.tz.DateTimeZoneBuilder$RuleSet.nextTransition(DateTimeZoneBuilder.java:1091)
[java] at org.joda.time.tz.DateTimeZoneBuilder$RuleSet.firstTransition(DateTimeZoneBuilder.java:1029)
[java] at org.joda.time.tz.DateTimeZoneBuilder.toDateTimeZone(DateTimeZoneBuilder.java:351)
[java] at org.joda.time.tz.ZoneInfoCompiler.compile(ZoneInfoCompiler.java:391)
[java] at org.joda.time.tz.ZoneInfoCompiler.main(ZoneInfoCompiler.java:136)
知道这是什么吗?
答案 0 :(得分:0)
查看joda-time-2.1.jar/META-INF/MANIFEST.MF
我们可以看到所需的JDK是
Build-Jdk: 1.5.0_22
。
所以,如果你使用它,请使用它。
你有不好的zoneinfo文件。我使用JDK 1.6_22构建joda lib而没有任何问题。
在构建过程中我们有下一步
main:
[mkdir] Created dir: D:\js\target\classes\org\joda\time\tz\data
[java] Writing zoneinfo files
[java] Writing ZoneInfoMap
Executed tasks
这里你的建筑失败了