我正在使用Linux Ubuntu 13.10 我正在尝试运行脚本并收到以下错误:
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar: Success
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
我有:
javac -version
javac 1.7.0_51
java -version
java version "1.7.0_51"
OpenJDK Runtime Environment (IcedTea 2.4.4) (7u51-2.4.4-0ubuntu0.13.10.1)
OpenJDK 64-Bit Server VM (build 24.45-b08, mixed mode)
当我跑步时:
echo $CLASSPATH
:我输出空白
echo $JAVA_HOME
:空白输出
请帮帮我,如何解决这个问题。
答案 0 :(得分:2)
您必须设置CLASSPATH和JAVA_HOME环境变量。看看这个:
https://askubuntu.com/questions/186693/how-set-classpath-variable-for-a-folder-in-ubuntu http://www.wikihow.com/Set-Up-Your-Java_Home-Path-in-Ubuntu
这可以作为示例,用你的目录替换目录:
导出JAVA_HOME =“/ usr / lib / jvm / java-7-openjdk-i386 / bin”
export CLASSPATH =“。:/ usr / lib / jvm / java-7-openjdk-i386 / lib”
答案 1 :(得分:1)
编译代码后,最终会得到程序中每个类的.class文件。这些二进制文件是Java解释执行程序的字节码。 NoClassDefFoundError指示负责动态加载类的类加载器无法找到您尝试使用的类的.class文件。它可能表示您在执行代码时未设置classpath选项。此链接说明了在执行
时如何设置类路径