【问题标题】:Is the JDK missing some source files?JDK是否缺少一些源文件?
【发布时间】:2014-08-28 07:25:20
【问题描述】:

我使用 Eclipse (Luna) 和 JDK 8 update 5,并且我已经开始学习 JavaFX。我在 javafx.scene.media 包中玩 JavaFX 媒体播放 - Media、MediaPlayer、MediaView 等类 - 我注意到这些类中的任何一个都没有附加 Javadoc:“注意:这个元素的 Javadoc 可以在附加的源代码和附加的 Javadoc 中都找不到。”似乎其他 JavaFX 包中的所有类都很好,并且它们的 Javadocs 已正确附加。 javafx.scene.media 中还有 4 个运行良好的类 - AudioClipBuilder、MediaBuilder、MediaPlayerBuilder 和 MediaViewBuilder(这 4 个已被弃用......) - 但其余的缺少 Javadocs。

我查看了 jfxrt.jar 的设置,它有 Javadoc 位置:http://docs.oracle.com/javase/8/docs/api/,源附件是 JDK 中的“javafx-src.zip”。我在 javafx-src.zip 中检查了源文件,而 javafx/scene/media 中唯一的文件是 4 个已弃用的正在工作的 Builder 类。这就解释了为什么这 4 个有工作的 Javadocs,但我的问题是:为什么包中的其余类缺少源文件? (有人知道其他缺少源文件的类吗?)我重新安装了 JDK,但它们仍然不见了。

另外,即使源文件丢失,为什么 Eclipse 仍然无法找到 javadoc,因为 http://docs.oracle.com/javase/8/docs/api/ 被设置为 javadoc 位置?

【问题讨论】:

  • 我知道,如果你在“常规”Java 类中调试得太深,你可能会遇到丢失的源文件,但到目前为止,我遇到的所有文件都在 sun.* 包中树。我不太确定为什么仍然缺少东西;我的印象是随着 Java 8 的发布,JavaFX 是完全开源的。也许 Oracle 只是出于某种原因决定不打包所有东西。无论如何,请尝试下载 OpenJDK 源代码,因为它应该包含所有内容。

标签: java javafx


【解决方案1】:

您看到的情况似乎只是内部 Oracle JavaFX 发行版构建过程中的一个临时错误和疏忽,将在未来的版本中纠正:

链接的问题跟踪器需要注册,但任何人都可以注册以查看引用链接上的问题。

Eclipse 无法在 http://docs.oracle.com/javase/8/docs/api/ 找到 JavaFX JavaDocs,因为该文档不存在。目前 JavaFX 文档未与 Java 8 文档集成。 JavaFX API 文档链接 Java 8 client technologies page 指向 http://docs.oracle.com/javase/8/javafx/api/,(奇怪的是,这个链接在 Internet Explorer 中为我解决了,但在 Firefox 中没有解决)。我可以看到 JavaFX Media 类的文档在那里。

我不是 Eclipse/e(fx)clipse 用户,因此我不确定以下内容,但我建议更新您的 Eclipse javadoc 配置 URL 以包含 JavaFX API 链接。如果您使用e(fx)clipse tools,这些工具可能会为您配置正确的 javadoc 位置。

【讨论】:

  • 感谢您的帮助,我将 javadoc 附件更新到单独的 JavaFX API 文档页面,现在可以正常工作了。至于丢失的文件,很高兴知道这只是一个暂时的错误。
  • 我修复了当前开发流的 javadoc 位置 (bugs.eclipse.org/bugs/show_bug.cgi?id=439100)
猜你喜欢
  • 2016-01-31
  • 2011-02-18
  • 2016-04-27
  • 1970-01-01
  • 2018-11-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多