我最近拉下了一个大型项目的更新版本,更新为使用一个新的(更新的(Java版本(11而不是8(。但是,我在以下导入时收到错误:
import sun.java2d.cmm.ProfileDeferralMgr;
并出现"无法解析导入 sun.java2d.cmm"的错误
我的各种谷歌搜索,虽然它产生了很多关于sun.java2d.cmm的废话,但还没有告诉我任何关于我应该从哪里获取软件包的信息。
这是一个我应该已经"拥有"的包,但我不知何故没有设置 Eclipse 来查找它?或者它是我应该去"获取"和下载的东西(如果是这样,有人知道在哪里吗?
我正在使用 14.0.1 SDK,并且已将其设置为为 Java 11 构建目标(这是该项目应该作为其 minspec 构建的目标(。
任何帮助非常感谢!
该包是JDK的一部分,但它不应该公开使用。试试这个:
% cd jdk-14.0.1/
% bin/jshell
| Welcome to JShell -- Version 14.0.1
| For an introduction type: /help intro
jshell> import sun.java2d.cmm.ProfileDeferralMgr;
| Error:
| package sun.java2d.cmm is not visible
| (package sun.java2d.cmm is declared in module java.desktop, which does not export it)
| import sun.java2d.cmm.ProfileDeferralMgr;
| ^------------^
有趣的是,同样的错误发生在 jdk-11 中,所以我想知道你拉下来的项目是如何构建的。这个问题的答案可能会有所帮助。