当前位置: 代码迷 >> J2SE >> in   thread   "main "   java.lang.ClassFormatError:
  详细解决方案

in   thread   "main "   java.lang.ClassFormatError:

热度:166   发布时间:2016-04-24 13:53:32.0
请帮我看看为什么我的java 在linux下无法运行
这个是我   /etc/profile里的配置

export   JAVA_HOME=/usr/java/jdk1.6.0_02
export   PATH=$PATH:$JAVA_HOME/bin
export   CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

我用eclipse写和编译都没问题
用   java   filename   来运行eclipse编译出来的   class文件也没问题

但是如果我用   javac   filename.java   来编译文件
然后再运行   java   filename就不行了
测试程序是一个   helloworld
错误信息是

Exception   in   thread   "main "   java.lang.ClassFormatError:   HelloWorld   (unrecognized   class   file   version)
      at   java.lang.VMClassLoader.defineClass(libgcj.so.8rh)
      at   java.lang.ClassLoader.defineClass(libgcj.so.8rh)
      at   java.security.SecureClassLoader.defineClass(libgcj.so.8rh)
      at   java.net.URLClassLoader.findClass(libgcj.so.8rh)
      at   gnu.gcj.runtime.SystemClassLoader.findClass(libgcj.so.8rh)
      at   java.lang.ClassLoader.loadClass(libgcj.so.8rh)
      at   java.lang.ClassLoader.loadClass(libgcj.so.8rh)
      at   gnu.java.lang.MainThread.run(libgcj.so.8rh)

请教各位

------解决方案--------------------
export JAVA_HOME=/usr/java/jdk1.6.0_02
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

改:
export JAVA_HOME=/usr/java/jdk1.6.0_02
export PATH=$PATH:$JAVA_HOME/bin:.
export CLASSPATH=.
即可~
classpath有重大错误~ 先搞清classpath是设置什么的 在设置吧~ 网上查下就明白了~
  相关解决方案