Ubuntu解决java/lang/NoClassDefFoundError错误

2025-05-18 09:36:14

1、首先在ubuntu系统中打开终端(ctrl+alt+T),然后输入sudo apt-get install alien(安装alien,这个alien用来把rpm转化为deb的。之后使用dpkg命令安装deb软件包。)

Ubuntu解决java/lang/NoClassDefFoundError错误

2、输入 sudo alien /usr/zm/QtForAndr/jdk-7u79-linux-i586.rpm等待,直到可以再输入命令的时候,就表示rpm已成功转化为deb软件包。(我的rpn是放置在自定义文件夹QtForAndr文件夹下的)

Ubuntu解决java/lang/NoClassDefFoundError错误

3、输入 sudo dpkg -i /usr/zm/QtForAndr/jdk-7u79-linux-i586.deb等待,直到可以再输入命令的时候,就表示已安装完毕。但是安装完毕,不表示就一定可以正常运行java

4、输入 java -version可以看到提示“java/lang/NoC盟敢势袂lassDefFoundError: java/l锾攒揉敫ang/Object ”错误。其实这个错误有可能是因为rpm在转deb的时候出现了隐性问题,这个问题显现不出来,所以我们无从查起。但是,我们可以看到在安装的java的目录下,/usr/java/jdk1.7.0_79/lib有个tools.pack,在/usr/java/jdk1.7.0_79/jre/lib下有个rt.pack。正常情况下这两个文件应该是tools.jar和rt.jar。这种情况下,可以使用右键压缩或者使用/usr/java/jdk1.7.0_79/bin下的unpack200实现pack文件到jar文件的转换,然后替换原来的pack文件。但是这个方法我试过,没成功。

5、所以,我又下载了一个jdk-7u79-linux-i586.tar.gz,然后使用tar -zxvf /home/zm/jdk-7u79-linux-i586.tar.gz鞅瓞慈玢解压出来jdk1.7.0_79文件夹rm -rf /usr/java/jdk1.7.0_79把原来的jdk1.7.0_79文件夹删除,并把解压出来的文件夹复制到此处cp -rf /home/zm/jdk1.7.0_79 /usr/java

Ubuntu解决java/lang/NoClassDefFoundError错误
Ubuntu解决java/lang/NoClassDefFoundError错误

6、修改环境变量sudo gedit /etc/profile在打开的文件中的末尾添加这些东西#setjdkenvironmentexport夼猿勇麒JAVA_HOME=/usr/java/jdk1.7.0_79exportCLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATHexportPATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

Ubuntu解决java/lang/NoClassDefFoundError错误

7、输入 java -version可以看到java的相关信息了。

Ubuntu解决java/lang/NoClassDefFoundError错误
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢