运行任何Java应用程序或仅运行“java”时,jvm都会失败:
以下是错误答案的列表:
$ java -fullversion
./java full version "1.7.0_05-b05"
java -version
失败...与上述有任何想法吗?
最佳答案
此问题源于Java安装不正确。
可能性1
Java标准库包含在各种JAR中,例如rt.jar
,deploy.jar
,jsse.jar
等。打包JRE时,这些关键的JAR文件用Pack200压缩并存储为rt.pack
,deploy.pack
,jsse.pack
等。应该使用Java安装程序解压缩它们。如果遇到此错误,显然没有发生。
您需要在JRE的unpack200
和.pack
文件夹中的所有lib/
文件上手动运行 lib/ext/
。
视窗
要解压缩一个.pack
文件(例如rt.pack
),请运行:
"%JAVA_HOME%\bin\unpack200" -r -v rt.pack rt.jar
要递归解压缩所有
.pack
文件,请从JRE根目录运行:for /r %f in (*.pack) do "%JAVA_HOME%\bin\unpack200.exe" -r -q "%f" "%~pf%~nf.jar"
*尼克斯
要解压缩一个
.pack
文件(例如rt.pack
),请运行:/usr/bin/unpack200 -r -v rt.pack rt.jar
要递归解压缩所有
.pack
文件,请从JRE根目录运行:find -iname "*.pack" -exec sh -c "/usr/bin/unpack200 -r -q {} \$(echo {} | sed 's/\(.*\.\)pack/\1jar/')" \;
可能性2
您以其他方式错误安装了Java。也许您是在没有管理员权限的情况下安装的,或者只是尝试从安装程序中提取文件。使用安装程序和/或更多特权重试。或者,如果您不想使用安装程序,请改用
.tar.gz
Java软件包。