【问题标题】:Jar file runs by double clicking but not through cmd? [duplicate]Jar文件通过双击而不是通过cmd运行? [复制]
【发布时间】:2020-01-23 02:58:09
【问题描述】:

我制作了一个小型 Java 应用程序,想发送给我的朋友,但是他们无法通过双击打开文件。他们没有技术知识或经验,所以我无法真正让他们使用任何其他方式来运行应用程序。

当我尝试双击应用程序时,它似乎运行得很好,但是当我尝试通过 CMD 运行(使用java -jar Ky.jar)时,我收到了这个错误:

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: KySim has been compiled by a more recent version of the Java Runtime (class file version 54.0), this version of the Java Runtime only recognizes class file versions up to 52.0
        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.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 sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)

我朋友那边的错误也与 Java 运行时版本有关,所以也许这有某种联系?作为一个初学者,我已经在这方面花费了相当长的时间,但一直无法提出解决方案,甚至无法想出我需要做什么,因此不胜感激。

我不知道这是否重要,但这是我的 Java 版本信息:

java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

【问题讨论】:

    标签: java cmd jar


    【解决方案1】:

    这只是版本不匹配。您已经使用 java 版本 10 编译了代码,并且您当前的 JRE 是版本 8。

    49 = Java 5
    50 = Java 6
    51 = Java 7
    52 = Java 8
    53 = Java 9
    54 = Java 10
    55 = Java 11
    56 = Java 12
    57 = Java 13
    

    【讨论】:

    • 所以我只需要更新我的 JRE 版本?
    • 是的,您必须与您的 IDE jre 和系统 jre 同步
    猜你喜欢
    • 2011-07-28
    • 2012-02-04
    • 2021-01-20
    • 1970-01-01
    • 2017-02-14
    • 2013-07-27
    • 2016-02-19
    • 1970-01-01
    • 2012-01-20
    相关资源
    最近更新 更多