线程“Timer-O”中的异常java.langllegalStateException:此操作是仅允许事件线程
Exception in thread "Timer-0" java.lang.IllegalStateException: This operation is permitted on the event thread only; currentThread = Timer-0
at com.sun.glass.ui.Application.checkEventThread(Unknown Source)
at com.sun.glass.ui.Window.setTitle(Unknown Source)
at com.sun.javafx.tk.quantum.WindowStage.setTitle(Unknown Source)
at javafx.stage.Stage$5.invalidated(Unknown Source)
at javafx.beans.property.StringPropertyBase.markInvalid(Unknown Source)
at javafx.beans.property.StringPropertyBase.set(Unknown Source)
at javafx.beans.property.StringPropertyBase.set(Unknown Source)
at javafx.stage.Stage.setTitle(Unknown Source)
at Program5$6$1.run(Program5.java:197)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
解决办法:
在 tomcat 路径下找到work\Catalina\localhost
→→ 删除对应的 文件(如果找不到具体文件可删除 localhoost 目录下的所有文件)→→ 重启项目就解决了。
博客内容涉及到一个JavaFX应用程序中出现的异常,异常信息指出操作必须在事件线程上执行。问题出现在尝试更改窗口标题的操作,这在非事件线程中是不允许的。解决方案是确保此类UI更新操作在正确的线程上进行,或者使用Platform.runLater()方法来调度任务到事件线程执行。
3703

被折叠的 条评论
为什么被折叠?



