java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > java:程序包javafx.geometry不存在

java:程序包javafx.geometry不存在问题及解决

作者:山___

这篇文章主要介绍了java:程序包javafx.geometry不存在问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

java:程序包javafx.geometry不存在

开发工具

报错信息

错误信息解读

解决

解读1 2 为解决问题指明方向(诸如【Intellij IEDA运行报错:Error:(4, 19) java: 程序包javafx.*不存在】的解决方案不对症),应从Maven的生命周期着手解决。

解读 3 是具体问题。

我们是在编译java文件的时候需要依赖这个包中的class,也就是mvn compile调用的编译程序的classpath中没有包含 import javafx.geometry.Point2D这个包。

包可能存在于 ${MAVEN_HOME} /jre/lib/rt.jar 这个jar中,所以问题变成了解决

mvn compile调用的编译程序的classpath中缺少${MAVEN_HOME}/jre/lib/rt.jar 这个jar包的问题,那么把包添加到Classpath就行了。

解决方法 修改Pom文件

<pluginManagement>
     <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
              <version>3.5.1</version>
                  <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                    <compilerArguments>
                           
                            <!-- 解决maven命令编译报错,因为rt.jar 和jce.jar在jre的lib下面,不在jdk的lib下面-->
                        <bootclasspath>${java.home}\lib\rt.jar;${java.home}\lib\jce.jar</bootclasspath>
                    </compilerArguments>
            </configuration>
        </plugin>
     </plugins>
</pluginManagement>

import javafx.geometry.Point2D无法导入问题

首先,看一下自己的java的版本,由于我之前使用的版本为java se-1.6,导致找不到包,所以升级一下Java版本是最好的办法,亲测java se-1.8可以用,不想的话从网上倒入一个外部包,但是亲测发现还是不行,找不到包,可能是版本的问题吧,升级配置完环境以后

访问限制

由于对必需的库 C:\Program Files (x86)\Java\jre1.8.0_77\lib\ext\jfxrt.jar 具有一定限制,因此无法访问类型 Point2D

这是因为这个类是Eclipse的JRE带的,但并不属于JAVA的公开API。

解决方法

右击项目->属性->Java Compiler(java编译器)->Errors/Warnings(错误、警告)->Deprecated and restricted API(建议不要使用和限制使用的API)->Forbidden reference (禁止引用)> Ignore(忽略)

然后就行了~

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文