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问题,没办法,去官网

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





