Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Io 为什么java不能读取rt.jar?_Io_Java_Noclassdeffounderror - Fatal编程技术网

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

Io 为什么java不能读取rt.jar?,io,java,noclassdeffounderror,Io,Java,Noclassdeffounderror,我正在尝试运行一个java程序,该程序使用PrintWriter并调用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不能从自己的库中

我正在尝试运行一个java程序,该程序使用
PrintWriter
并调用
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
?有人知道解决办法吗

正如文件路径所示,我正在使用Java1.6

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


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

您的类路径设置不正确应该如何设置?您在命令行中使用的命令是什么?通常,您需要在程序中使用java-cp“jar路径”。如果jar不在类路径中的文件夹中,您能展示一下如何调用程序命令行吗?@rahulmaindargi当我调用一个bash脚本,该脚本在硬编码的jar上调用
java-cp
,并将类路径指定为参数时,就会发生上述错误。但是当我不使用脚本时,我会遇到类似的错误。从一个包含jarred项目和jarred引用库(不包括JRE系统库)的目录中,我输入
java-cp project.jar:*path/to/MainClass[args]
,我得到以下信息:
NoClassDefFoundError:java/util/Vector
,但当我从linux机器上运行它时,它也会工作。所以
rt.jar
必须包含正确的内容。文件路径是否有问题(至少当我在Windows机器上运行程序时)?
/usr/java/。
是Unix文件路径。为什么在Windows计算机上看到该路径?你是怎么运行你的程序的?啊,就是这样!或者至少是其中的一部分。我正在通过一个bash脚本运行这个程序,这个脚本是为在Linux系统中工作而编写的。但是当我尝试在没有脚本的情况下运行它时,问题仍然存在。当我进入
java-cp project.jar:*path/to/MainClass[args]
时,我得到了以下信息:
NoClassDefFoundError:java/util/Vector
我缺少了什么?cygwin,您使用的是
bash
的哪个端口?剧本里有什么?您使用的是Cygwin还是Windows版本的java?(Cygwin是否有自己的Java版本?)脚本在这个jar(硬编码到脚本中的绝对文件路径)上调用
Java-cp
,类路径由传递给脚本的参数指定。西格温是什么?我如何判断我是否在使用它,这意味着什么?
/usr/java/jdk1.6.0_06/jre/lib/rt.jar: error reading zip file