Android IllegalAccessError java.util.concurrent.TimeUnit.toHours

时间:2012-10-25 19:02:35

标签: java android

为什么会这样:

long diffInMis = date2.getTime() - date.getTime();
diffInHour = TimeUnit.MILLISECONDS.toHours(diffInMis);

扔掉这个:

  

java.lang.IllegalAccessError:尝试访问方法   java.util.concurrent.TimeUnit.toHours:(Z)V

我在开发者控制台中遇到了这个错误,无法重现它。 知道我只是自己做数学,但我很好奇。

设备:HTC Legend Android 2.2

答案:API中缺少TimeUnit< 9

1 个答案:

答案 0 :(得分:2)

Java 5没有toHours,而是Java 6 does。我的猜测是你在运行时使用的TimeUnit类版本不包括toHours。当您的代码无法从您的引用位置访问字段或方法时,会发生此类异常。