3

これは私が得るものです:

[user@localhost KioskMenu]$ java -jar ./kioskmenu.jar 
Exception in thread "main" java.lang.ClassFormatError: KioskMenu (unrecognized class file version)
   at java.lang.VMClassLoader.defineClass(libgcj.so.7rh)
   at java.lang.ClassLoader.defineClass(libgcj.so.7rh)
   at java.security.SecureClassLoader.defineClass(libgcj.so.7rh)
   at java.net.URLClassLoader.findClass(libgcj.so.7rh)
   at gnu.gcj.runtime.SystemClassLoader.findClass(libgcj.so.7rh)
   at java.lang.ClassLoader.loadClass(libgcj.so.7rh)
   at java.lang.ClassLoader.loadClass(libgcj.so.7rh)
   at gnu.java.lang.MainThread.run(libgcj.so.7rh)
[user@localhost KioskMenu]$ 

私が気付いた唯一のことは、私のRHELが「無料」バージョンのJavaを使用していることでした。しかし、これは問題ではないはずですか?

4

2 に答える 2

5

Linuxマシン上のJavaよりも新しいバージョンのJavaを使用してjarをコンパイルしました。

于 2011-08-15T15:25:24.923 に答える
1

あなたは本当にこれをしているべきです:

java -jar ./kioskmenu.jar

に注意して-ください。

を与えるだけjava jar ./kioskmenu.jarで、JVMはという名前のクラスを見つけようとし、そのクラスへの引数としてjar渡そうとし./kioskmenu.jarます。これは明らかにあなたが望むものではありません。

于 2011-08-15T15:20:45.610 に答える