You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaFX运行报错java.lang.ClassNotFoundException: application.VideoPlayer求助

解决java.lang.ClassNotFoundException: application.VideoPlayer问题
  • 检查编译后的类文件结构
    编译带package application;声明的代码后,必须生成application/VideoPlayer.class目录结构。执行find . -name "VideoPlayer.class",确认文件存在于./application/路径下。如果没有,重新编译时确保命令正确:

    javac --module-path $PATH_TO_FX --add-modules javafx.controls,javafx.media VideoPlayer.java
    
  • 修正运行命令的类路径
    Linux下JVM依赖类路径定位包结构,必须从包结构的根目录执行运行命令。比如你的application文件夹在当前工作目录下,执行:

    java --module-path $PATH_TO_FX --add-modules javafx.controls,javafx.media application.VideoPlayer
    

    不要进入application目录后运行java VideoPlayer,这会导致JVM找不到application包。

  • 验证环境变量有效性
    执行echo $PATH_TO_FX和echo $JAVA_HOME,确认输出是正确的JavaFX SDK lib目录和JDK安装路径。如果环境变量未生效,将以下内容添加到~/.bashrc(或~/.zshrc,根据你使用的shell):

    export JAVA_HOME=/usr/lib/jvm/java-19-openjdk-amd64
    export PATH_TO_FX=/path/to/your/javafx-sdk-19/lib
    export PATH=$JAVA_HOME/bin:$PATH
    

    然后执行source ~/.bashrc使配置生效。

  • 核对包声明与类名
    确认VideoPlayer.java顶部的包声明是package application;,类名是public class VideoPlayer——Linux文件系统大小写敏感,包名和类名的大小写必须完全匹配,不能出现Application或videoplayer这类错误写法。

  • 确保编译时模块参数完整
    视频播放依赖javafx.media模块,编译时必须添加到--add-modules参数中,避免因模块缺失间接导致类加载失败:

    javac --module-path $PATH_TO_FX --add-modules javafx.controls,javafx.media VideoPlayer.java
    

内容的提问来源于stack exchange,提问作者CSB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 04:55:45