为什么在尝试 运行 Swing 桌面应用程序时出现 HelpSetException - NoClassDefFoundError?
Why do I get a HelpSetException - NoClassDefFoundError when trying to run a Swing desktop application?
应用程序和帮助系统 运行 来自 netbeans IDE 没问题,但是部署时在帮助集上返回了异常。我检查了三个帮助 jar jh.har、jhall.jar 和 jhbasic.jar 在项目 > 属性 > 库 > 编译中。我检查了从 NetBeans 创建的发行版的内容,并验证了这三个帮助文件位于 lib 文件夹中。我已经检查并验证 Windows 8.1 CLASSPATH 包括:
CLASSPATH=C:\Program Files\Java\jdk1.8.0_72\bin;
D:\jh2.0\javahelp\lib;
D:\jh2.0\javahelp\bin
这是来自 运行 的转储:
C:\Program Files (x86)\NewDawn4>java -jar Newdawn.jar
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.NoClassDefFoundError: javax/help/HelpSetException
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
at java.lang.Class.privateGetMethodRecursive(Unknown Source)
at java.lang.Class.getMethod0(Unknown Source)
at java.lang.Class.getMethod(Unknown Source)
at sun.launcher.LauncherHelper.validateMainClass(Unknown Source)
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Caused by: java.lang.ClassNotFoundException: javax.help.HelpSetException
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)
... 7 more
深入研究了这个问题并遵循了其他人的建议,我仍然没有解决方案,看不出我做错了什么。
尝试在清单中设置类路径:
Class-Path: lib/jh.jar lib/jhall.jar lib/jhbasic.jar
应用程序和帮助系统 运行 来自 netbeans IDE 没问题,但是部署时在帮助集上返回了异常。我检查了三个帮助 jar jh.har、jhall.jar 和 jhbasic.jar 在项目 > 属性 > 库 > 编译中。我检查了从 NetBeans 创建的发行版的内容,并验证了这三个帮助文件位于 lib 文件夹中。我已经检查并验证 Windows 8.1 CLASSPATH 包括:
CLASSPATH=C:\Program Files\Java\jdk1.8.0_72\bin;
D:\jh2.0\javahelp\lib;
D:\jh2.0\javahelp\bin
这是来自 运行 的转储:
C:\Program Files (x86)\NewDawn4>java -jar Newdawn.jar
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.NoClassDefFoundError: javax/help/HelpSetException
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
at java.lang.Class.privateGetMethodRecursive(Unknown Source)
at java.lang.Class.getMethod0(Unknown Source)
at java.lang.Class.getMethod(Unknown Source)
at sun.launcher.LauncherHelper.validateMainClass(Unknown Source)
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Caused by: java.lang.ClassNotFoundException: javax.help.HelpSetException
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)
... 7 more
深入研究了这个问题并遵循了其他人的建议,我仍然没有解决方案,看不出我做错了什么。
尝试在清单中设置类路径:
Class-Path: lib/jh.jar lib/jhall.jar lib/jhbasic.jar