在 Kubuntu 18.10 (cosmic) 中,应用程序MediathekView崩溃并显示以下错误消息:
java.lang.NoClassDefFoundError: com/jidesoft/utils/ThreadCheckingRepaintManager
备注:该消息仅在使用命令从控制台启动 MediathekView 时可见mediathekview
。当 MediathekView 从启动器启动时,什么也没有发生(没有错误消息,什么也没有)。
在 Kubuntu 18.10 (cosmic) 中,应用程序MediathekView崩溃并显示以下错误消息:
java.lang.NoClassDefFoundError: com/jidesoft/utils/ThreadCheckingRepaintManager
备注:该消息仅在使用命令从控制台启动 MediathekView 时可见mediathekview
。当 MediathekView 从启动器启动时,什么也没有发生(没有错误消息,什么也没有)。
完整版 MediathekView 不存在此问题,可在此处从官方网站下载;此版本带有
lib
文件夹内缺少的库;版本 13.2.1,这个答案时的最新版本对我来说效果很好。安装仅包括解压缩存档。该文件MediathekView.jar
启动应用程序,该lib
文件夹是应用程序启动所必需的。但是,使用该命令启动 MediathekView
java -jar MediathekView.jar
将不起作用;抛出这个新错误:由于某种原因,找不到 JavaFX。首先,您必须确保
libopenjfx-java
已安装该软件包;因为它是 MediathekView 的依赖项,所以它应该已经安装。然后在启动 MediathekView 时,必须手动将 JavaFX 的所有 JAR 文件添加到类路径中:您可以在前面添加一个路径
MediathekView.jar
以匹配您解压缩安装包的位置。MediathekView 应该启动,但启动画面将不起作用。
MediathekView 内置了一个挑剔的 Java 版本检查,并且会抱怨一些特定的 JDK 版本号;例如 OpenJDK 11 可以工作,但错误修复版本 OpenJDK 11.0.1 不能工作。
您只需复制以下行:
在文件中
mediathekview.sh
。将它放在注释后的第一行,然后运行
mediathekview.sh
.您可以删除 MediathekView 并改用MediathekViewWeb。它的功能较少(请参阅自述文件,仅限德语),但不需要任何安装。
不,你不能“只复制那行”。如果这样做,您将收到下一个错误:
因为
lib
s 导致由 JDK11 编译的类,而不是 JDK8。检查 openjfx 的版本(“sudo apt install openjfx”安装它或返回版本)。我在 18.04 LTS。所以它是 1.8.xx。关于java,我安装了几个版本。当没有选择对应的版本时(8)会报这个错误。要切换版本,请使用“sudo update-alternatives --config java”,它指示安装了哪些版本,选择了哪个版本以及您必须插入哪个号码才能切换。要重新检查,您可以输入“java --version”。