IntelliJ导入JavaFX包的攻略
本人编程小白,在网上反复查找没能找到能彻底解决ij读不到fx包的问题,综合了几个帖子整理了流程出来,一方面是为了防止我本人需要再搞一次但是忘了,一方面是为了降低和我情况相似的人在查找教程时的血压,总之流程放这里了
首先,这个教程是针对“我下载了一个工程,那个工程有文件import了javaFX的玩意儿,我想运行那个文件/其他没用javaFX的玩意,但是报错报了一坨红色的东西”的情况
1.本人使用的jdk是corretto-17,我也忘了从哪里下的了
然后是从这里下的javaFX包
https://gluonhq.com/products/javafx
我下载的是对应我jdk版本的17.0.8。若读者的jdk版本不同,请同样下载对应版本的包
这里强烈建议留着下载下来的zip直到FX能正常跑,因为后面可能需要进行玄学操作
先把javaFX包体里的bin和lib文件夹直接扔进你jdk的文件夹。我的在这个地方。其余的可能地方大概就是Program file->Java之类的。找不到的话我记得ij可以看的来着
然后那个包体里剩下的东西就没用了,记得扔回收站防止潜移默化的占用你的电脑内存

2.打开ij,打开需要javafx的那个工程
文件->项目结构

打开之后,把语言级别调整为与jdk对应的。我怀疑一个java版本可能有多个语言级别,如果一个不行换另外一个试试(我也不知道具体关系啊,别问我,只是个人觉得可能会有这种情况,我压根没碰到过)

然后就是在库里加上你的jdk的lib文件夹地址

现在再跑一次程序,不出预料的话你现在的报错就会从一坨红色的东西变成 “缺少运行时组件”
3. 现在新建一个性感的module-info.java在src下面的文件夹里面,直接建在src里估计也没啥区别吧大概

打开,然后把这些东西复制粘贴上去
requires javafx.fxml;
requires javafx.controls;
opens ~;

此处,~是"报错类所在的文件夹"。如果有多个报错类我估计你得再多整几个opens,反正我没这情况

最后跑一下这个info,如果没报错大概率就大功告成了,回去接着跑你需要跑的那个程序吧
4.玄学部分
如果上面这一套下来还是有问题,可以试下我忘了从哪里找到的一个办法
前面不是让你留着下载下来的fx的zip文件吗?再解压一个,放到无英文路径
打开报错的那个文件的窗口,然后右击你打开的文件的窗口选项处,选择修改运行配置

选择程序实参,塞入这坨东西
--module-path "~" --add-modules javafx.controls,javafx.fxml
此处~为你的jdk路径
如果还是没法运行就试着改成你刚刚解压出来的第二个fx包的lib的路径

再不行那没办法了,换个攻略看吧
参考:
https://www.cjavapy.com/article/556/
总之还有,但是想不起来参考的页面是啥了