每周问题系列 - JavaFX界面没响应,Maven编译自动忽略rt包_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 每周问题系列 - JavaFX界面没响应,Maven编译自动忽略rt包

每周问题系列 - JavaFX界面没响应,Maven编译自动忽略rt包

 2017/8/9 0:31:20  TangPere  程序员俱乐部  我要评论(0)
  • 摘要:本人博客文章网址:https://www.peretang.com/weekly-problem-session-week-31/前言新开一个系列,用来记录每周遇到的问题JavaFX界面没响应当你在JavaFX的一个事件中绑定了一个需要一段时间运行的事件时,在该事件运行期间,JavaFX界面是没响应的.查阅Oracle官方文档后得知,JavaFX是一个单线程程序,其大概的流程是"界面-用户操作-根据顺序存入队列中-从队列中获取事件-执行具体的事件操作-修改界面".Oracle亦给出了解决方法
  • 标签:编译 Java 问题 Maven

本人博客文章网址:https://www.peretang.com/weekly-problem-session-week-31/


前言

新开一个系列, 用来记录每周遇到的问题

?

JavaFX界面没响应

当你在JavaFX的一个事件中绑定了一个需要一段时间运行的事件时, 在该事件运行期间, JavaFX界面是没响应的.

查阅Oracle官方文档后得知, JavaFX是一个单线程程序, 其大概的流程是"界面-用户操作-根据顺序存入队列中-从队列中获取事件-执行具体的事件操作-修改界面".

Oracle亦给出了解决方法, JavaFX为我们准备了javafx.concurrent包, 来提供并发的支持, 使用javafx.concurrent中的Task类, 我们可以让逻辑在后台运行, 并可与界面控件进行绑定实现实时更新.

参考

JavaFX Concurrency

?

Maven编译自动忽略rt包

在本周的工作里, 在某个方法中使用了一个JDK自带的rt包中的类, 在使用Junit测试后没问题, 打算用maven打包并发布, 但是却提示该类不存在, 在网上查阅资料后得知

--"sun之类的包并不包含在Java平台的标准中"

解决方法:

在Maven中的maven-compiler-plugin插件中的configuration中添加

<fork>true</fork>
<compilerArgument>-XDignore.symbol.file</compilerArgument>

从而让javac编译器允许编译rt中的某些特别类

参考

Maven can't compile class which depends on rt.jar

?

Keep outstanding.

Pere Tang. 2pm on Aug 8, 2017

上一篇: 《.NET 设计规范》第 6 章:扩展性设计 下一篇: 没有下一篇了!
发表评论
用户名: 匿名