Cro*_*max 2 java eclipse javafx java-9 javafx-9
我现在的Eclipse是Oxygen.2 Release(4.7.2),还有Java 9.0.1.基本上Java 9工作,特别是自动导入工作(对于"普通"类和包),但自动导入(和自动完成)不起作用javafx.*
.如果我手动输入import java
并按Ctrl+ Space,则弹出匹配包列表,我可以看到javafx.*
层次结构.但是当我输入eg import javafx.stage
并按Ctrl+时Space它会自动添加.*;
并且不会显示包中的任何类.当我Stage
在方法体中的某处键入并按Ctrl+时Space,没有任何建议.但是,当我键入添加导入(如import javafx.stage.Stage
)时,代码编译并运行.
任何线索如何修复自动完成和自动导入功能(正如我所说,适用于其他类,例如java.time.LocalDateTime
或许多其他类).
javafx*
由于访问规则控制对系统包的访问,因此在代码完成期间会阻止类.查看例如Eclipse bug 527353,动态计算可访问包列表的机制尚未在Eclipse Oxygen中完成.因此,只能使用静态配置文件.该文件目前提到:
注意:JavaSE-9配置文件尚未最终确定.
由于根据JEP 261的动态计算包括javafx
包 - 如果可用 - ,我认为静态配置文件也应该列出那些,或者被放弃以支持完全依赖于JPMS规则.
你可以,但是,通过显式定义访问规则授予访问权限,以避免该问题javafx/**
在
Java Build Path > Libraries > JRE System Library > Access rules
.