0

Java アプリケーションを Windows サービスとして実行しようとしています。ここで言ったようにしました:http://web.archive.org/web/20090228071059/http://blog.platinumsolutions.com/node/234

およびhttp://commons.apache.org/daemon/procrun.html

そして、私はこの例外を受け取ります:

  2013-02-04 14:52:25 Commons Daemon procrun stderr initialized
  java.lang.UnsupportedClassVersionError: serviceWrapper : Unsupported major.minor version 51.0
      at java.lang.ClassLoader.defineClass1(Native Method)
      at java.lang.ClassLoader.defineClassCond(Unknown Source)
      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$000(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)
  Exception in thread "main"   
4

4 に答える 4

0

Windows にインストールされているデフォルトの JRE は 1.6 以下のようですが、実行しようとしているクラスは Java 7 でコンパイルされています。

于 2013-02-04T13:14:15.017 に答える
0

この例外は、実行している JRE が Java 6.0 以前のバージョンであるが、実行しようとしているクラス (または少なくともそれらの一部) が Java 7.0 コンパイラを使用してコンパイルされていることを示しています。

これを解決するには、次の 2 つの方法があります。

  • 実行プラットフォームを Java 7.0 にアップグレードすると、コードはそのまま実行されます。

  • Java 6.0 (またはそれ以前) プラットフォーム用にコードを再コンパイルします。

    • Java 6.0 (またはそれ以前) の JDK をインストールし、コードを再コンパイルします。

    • 既存の Java 7.0 ビルド環境を使用してコードをコンパイルしますが、適切な「-target」オプションと「-bootclasspath」オプションを使用して、コンパイラーに Java 6.0 互換コードを生成させます。

(アップグレードをお勧めします...)

于 2013-02-04T14:12:03.763 に答える
0

java.lang.UnsupportedClassVersionError は、コンパイル時の JDK が高く、実行時の JDK が低いために発生します。

表示されているバージョン番号は、クラス ファイルと互換性のある JRE のバージョンを示しています。

J2SE 7 = 51,
J2SE 6.0 = 50,
J2SE 5.0 = 49,
JDK 1.4 = 48,
JDK 1.3 = 47,
JDK 1.2 = 46,
JDK 1.1 = 45
于 2013-02-04T13:14:57.717 に答える
0

アプリケーションは Java 7 アプリケーションですが、Java 6 (またはそれ以下) を使用しているようです。Java 7は Java Web サイトでインストールできます。

于 2013-02-04T13:16:15.610 に答える