0

重複の可能性:
Java エラー: OS X で Cassandra を実行しようとすると、.class ファイル内のバージョン番号が正しくありませんというエラーが発生する

この基本的なhello world プログラムで何か間違ったことをしているのかどうかはわかりません。なぜこれがエラーをスローするのか分かりません。

としてファイルを保存しましたtest.java

public class test {
    public static void main(String[] args) {
        System.out.println("Hello!");
    }

    /*public static void sop(String str) {
        System.out.println(str);
    }*/
}

でコンパイルするとjavac test.java正常にコンパイルされますが、を使用して実行しようとするとjava test、次のエラーが発生します。

C:\Users\admin\Desktop>java test
Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)

Javabinディレクトリがシステム パスに追加されます。ポインタをいただければ幸いです。

システム パスの Java ディレクトリは次のとおりです。

C:\Program Files\Java\jdk1.6.0_31\bin;C:\Program Files\Java\jre6\lib;

Java/javac バージョン:

C:\Users\admin\Desktop>java -version
java version "1.5.0_12"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_12-b04)
Java HotSpot(TM) Client VM (build 1.5.0_12-b04, mixed mode, sharing)

C:\Users\admin\Desktop>javac -version
javac 1.6.0_31

ありがとう。

4

2 に答える 2

3

Java コンパイラはバージョン 1.6.0 で、Java 実行可能環境はバージョン 1.5.0 です。

このエラーは、Java 実行可能ファイルが Java 実行可能環境に対して新しすぎることを示しています。

問題を解決するには、Java 環境を更新する (または Java コンパイラをダウングレードする) 必要があります。

于 2013-01-10T08:11:46.527 に答える
0

It could also be that your test class is improperly titled.

Class names should be capitalized according the ANSI standard.

于 2013-01-10T08:55:28.227 に答える