处理报错:java/lang/NoClassDefFoundError: java/lang/Object 操作系统环境:CentOS6.0 2.6.32-220.el6.x86_64 JDK版本环境:jdk1.5.0_22
操作系统原来安装的是jdk1.6,后来开发人员要求java程序使用jdk1.5版本的帮开发下载JDK1.5, 安装完JDK ,设定环境变量后出现这个错误: [root@fztest97 lib]# javac
Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object
[root@fztest97 lib]# java Error occurred during initialization of VM java/lang/NoClassDefFoundError
: java/lang/Object 首先要确认的是环境变量的设置是否正确,其次,需要确认的就是lib和jre/lib文件夹中的rt和tools是否是打包后的形式,如果发现rt.pack 和 tools.pack 那么多半问题就出在这里。
解决方法也很简单,只要将相应文件解压成rt.jar 和 tools.jar,可以使用bin里面的unpack200工具, 如:unpack200 rt.pack rt.jar /apps/usr/java/jdk1.5.0_22/lib/tools.pack 转为 tools.jar
/apps/usr/java/jdk1.5.0_22/jre/lib/rt.pack 转为 rt.jar 执行如下操作命令: [root@fztest97 ]# cd /apps/usr/java
/jdk1.5.0_22/lib/[root@fztest97 lib]# unpack200 tools.pack tools.jar [root@fztest97 lib]# ls dt
.jar ir.idl jconsole.jar orb.idl sa-jdi.jar tools.jar tools.pack [root@fztest97 lib]# cd /apps/usr
/java/jdk1.5.0_22/jre/lib [root@fztest97 lib]# unpack200 rt.pack rt.jar [root@fztest97 lib]# ll rt
.*-rw-r–r–. 1 root root 40232487 May 23 19:23 rt.jar -rw-r–r–. 1 root root 12960918 May 23 19:
07 rt.pack 再次执行如下命令,进行验证: [root@fztest97 lib]# java -version java version “1.5.0_22” Java
(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_22-b03) Java HotSpot(TM) 64-Bit Server VM
(build 1.5.0_22-b03, mixed mode)[root@fztest97 lib]# javac Usage: javac
>where possible options include:-g Generate all debugging info -g:none Generate no debugging info
-g:{lines,vars,source} Generate only some debugging info -nowarn Generate no warnings -verbose Output messages about what the compiler
is doing -deprecation Output source locations where deprecated APIs are used -classpath Specify
whereto find user class files -cp Specify whereto find user class files -sourcepath
> Specify whereto find input source files -bootclasspath Override location of bootstrap class files
-extdirs Override location of installed extensions -endorseddirs Override location of
endorsed standards path -d Specify whereto place generated class files -encoding <
encoding> Specify character encoding used by source files -source Provide source compatibility
with specified release-target Generate class files for specific VM version -version Version information
-helpPrint a synopsis of standard options -X Print a synopsis of nonstandard options -J
Pass directly to the runtime system 到此为止,JDK1.5安装配置成功。