deepin(Debian) 安装STM32CubeProgrammer后打开失败,找不到或无法加载主类 com.st.app.Main java.lang.NoClassDeefFoundError

在Deepin(基于Debian)系统中,安装STM32CubeProgrammer后遇到打开失败的问题,由于JavaFX库缺失导致。通过安装openjfx、调整模块路径及版本升级,最终成功运行STM32编程工具。

stm32新出的stm32cubeprogrammer有linux版本,但是安装之后会提示要安装openjfx或者Orcale jre才能打开(cubeprg是2.0版本),原因是因为jdk8以后的版本不再包含jfx,而我用的是jdk11,

于是我换成了jdk8,不过依旧提示没有jfx。。。。。,于是我又把cubeprg版本换成了2.5版本,jdk换回jdk11,终于不再弹出未安裝jfx了,不过依旧打不开,错误提示:

错误: 找不到或无法加载主类 com.st.app.Main
原因: java.lang.NoClassDefFoundError: javafx/application/Application

也就是说还是因为缺少jfx,没办法sudo apt-get install openjfx安装jfx,但是安装了之后问题依旧,估摸着是opnjfx路径问题,程序找不到,全盘搜索了下openjfx,路径是/usr/share/openjfx,难怪,cubeprg默认openjfx路径是在java目录下,于是切换到cubeprg安装目录下的bin文件夹下

sudo deepin-editor STM32CubeProgrammer

修改启动文件,将其中最后一行java -jar $DIR/STM32CubeProgrammerLauncher,改为

java --module-path /usr/share/openjfx/lib --add-modules=javafx.base --add-modules=javafx.fxml --add-modules=javafx.graphics --add-modules=javafx.media --add-modules=javafx.swing --add-modules=javafx.web --add-modules=javafx.controls -jar $DIR/STM32CubeProgrammerLauncher,

这次程序能正常启动了,但是一点击芯片擦除或者烧录程序就卡死,尝试了许久发现还是jfx问题,没办法,去官网

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值