为什么java不能读取rt.jar?

时间:2013-05-31 15:15:29

标签: io java noclassdeffounderror

我正在尝试运行使用PrintWriter的java程序并调用PrintWriter.format()方法。它在Eclipse中运行良好,但是从命令行运行,我得到了这个:

/usr/java/jdk1.6.0_06/jre/lib/rt.jar: error reading zip file
Exception in thread "main" java.lang.NoClassDefFoundError: java/util/Formatter

这是否意味着Java无法从自己的库中读取.jar?有人知道解决这个问题吗?

我正在使用Java 1.6,正如文件路径所示。

编辑:当我从linux机器上的命令行运行时,它也可以正常工作。只是不在Windows上(通过PuTTY,如果那是相关的)。

1 个答案:

答案 0 :(得分:5)

/usr/java/jdk1.6.0_06/jre/lib/rt.jar: error reading zip file

看起来rt.jar的副本已损坏:某些程序已用垃圾覆盖了它。要修复它,你应该从某个地方获得一个新的副本,或者重新安装JDK。