JavaFX在eclipse luna中不工作时的自动完成

JavaFX在eclipse luna中不工作时的自动完成,java,eclipse,javafx,Java,Eclipse,Javafx,在试用JavaFX时,我目前在自动完成方面遇到了问题。我有一个标准的maven项目,将Java 8设置为源和目标: <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration>

在试用JavaFX时,我目前在自动完成方面遇到了问题。我有一个标准的maven项目,将Java 8设置为源和目标:

         <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
                <encoding>UTF-8</encoding>
            </configuration>
        </plugin>

,表明jfxrt对于使用JavaFX是必要的。Eclipse在/usr/lib/JVM/java-8-oracle/下使用正确的JVM,并在/usr/lib/JVM/java-8-oracle/jre/lib/ext/jfxrt.jar中找到正确的jfxrt.jar。如果我手动打开(在包资源管理器中)JRE系统库->jfxrt.jar->javafx.embed.swing,我会看到JFXPanel就在那里

然而,当我在输入
JFXPanel
后点击Strg+Space时,它只告诉我创建一个具有此名称的类。即使我写
importjavafx.embed.swing
它也只建议我写
importjavafx.embed.swing.
而不是这个包中的任何类


我觉得这种行为很尴尬。有谁能告诉我,为什么eclipse不能完成这个任务,或者我可以做些什么来防止这个问题发生?

转到项目属性->Java构建路径->[]->JRE系统库。检查您是否正在使用jdk而不是jre。如果使用jre切换到jdk,问题将得到解决

出于某种原因,Eclipse中的javafxapi将通过
***
访问规则标记为“禁止”(转到项目的构建路径并选择Libraries->jre/或jdk)。谢谢您的提示,但是在Configure->Build Path->Access rules中没有定义任何内容(它显示为'No rules defined',并且为空)。有没有办法在不使用efxclipse的情况下将javafxapi标记为不被禁止的?我也会对此感兴趣:)编辑它?但实际上这不是eclipse的错误ext类路径上的任何东西都不是公共API,eclipse将其隐藏。请注意,e efxclipse将使您的生活更加轻松,例如,使用高级CSS工具。。。但无论如何,编辑规则应该让您能够访问JavaFX