无法在 Javadoc 注释中链接到 JDK10

2023-12-28

从 Java 9 升级到 10 后,使用 Javadoc 工具生成文档时(例如,对于导入文件),指向 JDK 的链接不再起作用java.util.Optional, {@link Optional}呈现为Optional而不是作为Optional https://docs.oracle.com/javase/10/docs/api/java/util/Optional.html;同样的问题与@see, @param, @return,以及您通常看到 Javadoc 链接的其他任何地方)。

我有一个简单的模块化项目,我正在使用 Maven 和 Javadoc 插件(source and target选项设置为10 in the configuration编译器插件部分)。我的理解是默认情况下它会通过-link https://docs.oracle.com/javase/10/docs/api/到 Javadoc 工具。据我所知,从历史上看,Javadoc 工具需要一个名为package-list出现在被告知查找外部文档的 URL 上。爪哇8has one https://docs.oracle.com/javase/8/docs/api/package-list。爪哇9has one https://docs.oracle.com/javase/9/docs/api/package-list。爪哇10does not https://docs.oracle.com/javase/10/docs/api/package-list(404 错误)。显然,Javadoc 工具现在输出一个名为element-list代替package-list对于模块化项目,但看起来是这样的未提供 https://docs.oracle.com/javase/10/docs/api/element-list要么(也不为Java 9 https://docs.oracle.com/javase/9/docs/api/element-list,但它可用于早期访问版本Java 11 https://download.java.net/java/early_access/jdk11/docs/api/element-list).

通过 IntelliJ 使用选项生成 JavadocLink to JDK documentation启用会产生相同的结果。它说它正在过去-link https://docs.oracle.com/javase/10/docs/api/ to javadoc.exe,它报告javadoc: error - Error fetching URL: https://docs.oracle.com/javase/10/docs/api/。尽管出现错误,但它确实输出了 Javadoc,但与 Maven 一样,不存在 JDK 链接。

这应该如何运作? Oracle 将 JDK 文档放到网上时是否搞砸了?

我的相关部分pom.xml:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.7.0</version>
            <configuration>
                <source>10</source>
                <target>10</target>
            </configuration>
            <dependencies>
                <dependency>
                    <groupId>org.ow2.asm</groupId>
                    <artifactId>asm</artifactId>
                    <version>6.1</version> <!--update dependency for Java 10 compatibility-->
                </dependency>
            </dependencies>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>3.0.0</version>
            <executions>
                <execution>
                    <id>attach-javadocs</id>
                    <goals>
                        <goal>jar</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

输出mvn -version:

Apache Maven 3.5.3 (3383c37e1f9e9b3bc3df5050c29c8aff9f295297; 2018-02-24T12:49:05-07:00)
Maven home: C:\Program Files\apache-maven-3.5.3\bin\..
Java version: 10, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk-10
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

这有两个部分。

  1. 在 JDK 10 中,文件的格式和名称已更改,以更好地支持模块。新名称是“element-list”,格式的更改允许 javadoc 工具了解 API 中存在哪些模块以及哪些包。

  2. API 的副本发布于https://docs.oracle.com/javase/10/docs/api/overview-summary.html https://docs.oracle.com/javase/10/docs/api/overview-summary.html似乎阻止了“element-list”文件,给出了 404。这需要调查和修复。

请注意,您需要使用 JDK 10 版本的 javadoc 来指向 JDK 10 API。该工具的最新版本可以理解元素列表(用于有关模块的文档)和包列表(用于有关包的文档(即无模块))。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法在 Javadoc 注释中链接到 JDK10 的相关文章

  • 如何自定义BlockingQueue的阻塞行为

    我想创建一个阻塞队列 它根据自定义规则而不是队列中的项目数量来阻止生产者 例如 生产者生成一些文件并放入队列中 消费者经过一番分析后将它们转移到特定位置 对于上述场景 如果队列中的总文件大小达到某个阈值 我希望生产者等待生成新文件 如果总大
  • Firebase 查询 Or'ing whereEqualTo 以获得可能值的列表

    我见过之前针对早期版本的 Firebase 提出过这个问题 https stackoverflow com questions 26700924 query based on multiple where clauses in fireba
  • JavaEE 8 教程,在 hello1 项目上部署失败

    我正在尝试学习 Java EE 8 我遵循了官方指南https javaee github io tutorial https javaee github io tutorial 但我有这个问题 cargo maven2 plugin 1
  • .java 和 .scala 类之间是否可能存在循环依赖?

    假设我在 java 文件中定义了类 A 在 scala 文件中定义了类 B A 类使用 B 类 B 类使用 A 类 如果我使用 java 编译器 则会出现编译错误 因为 B 类尚未编译 如果我使用scala编译器A类将找不到 有没有可以同时
  • Spring webflow 应用程序:HTTP 302 暂时移动

    我的 java 应用程序中的每个请求都会生成另外 2 个带有 HTTP 302 错误的请求 例如 如果请求查看名为板 html 这个请求是从首页 html 我收到按以下顺序生成的 3 个请求 POST home html 302 Moved
  • 使用多个构造函数创建不可变类

    我正在阅读这一页 https docs oracle com javase tutorial essential concurrency imstrat html关于在 Java 中创建不可变类 并决定根据页面上概述的规范修改我正在编写的类
  • 使用 jdbc 程序连接到 Open Office odb 文件

    我编写了以下代码来连接到 OpenOffice db String db C Documents and Settings hkonakanchi Desktop Test odb Class forName org hsqldb jdbc
  • JUnit 使用 Mockito 测试异步方法

    我已经使用 Spring Framework 版本 5 0 5 RELEASE 在 Java 1 8 类中实现了异步方法 public class ClassToBeTested Autowired private MyComponent
  • Maven + Cobertura:无法找到[您的班级]。你指定了源目录吗?

    我有 MyMath 类 有两个简单的方法 multi 和 add 和测试类只会测试多种方法 public class MainTest Test public void testMultiply MyMath tester new MyMa
  • JUnit Eclipse 显示 System.out.print() 的

    我正在使用 JUnit 3 和 Eclipse 3 4 当我运行 JUnit 测试用例时 一切正常并且测试完美完成 唯一的事情是我想查看我正在运行的类的输出 所有类都具有一些输出值的基本 System out print 因此 当我运行测试
  • 如何在具有动态列的表中插入值 Jdbc/Mysql

    我想在具有动态列的表中添加值 我设法创建一个包含动态列的表 但我不知道如何插入数据 Create Table sql CREATE TABLE MyDB myTable level INTEGER 255 int columnNumber
  • 业务代表与服务定位器

    Business Delegate 和 Service Locator 之间有什么区别 两者都负责封装查找和创建机制 如果 Business Delegate 使用 Service Locator 来隐藏查找和创建机制 那么 Busines
  • Maven 多模块项目结构问题

    自从过去几周构建我的 Maven 多模块项目以来 这是我的一次有趣的经历 当我决定使用 Maven 进行构建生命周期管理时 我有几个原因希望选择 Maven A 大多数开发团队都是分开的 这样每个团队都可以在项目中的单独模块上工作 例如团队
  • Java 的 QP 求解器 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Vertx HttpClient getNow 不工作

    我的 vertx HttpClient 有问题 下面的代码显示使用 vertx 和纯 java 测试 GET Vertx vertx Vertx vertx HttpClientOptions options new HttpClientO
  • 在 Mac 上使用 JRE 打开 jar 文件

    我有一个 jar 文件 旨在通过命令行运行 我不打算在运行应用程序的机器上进行任何java开发 我的思考过程是 因此我应该只需要JRE而不是JDK 此外 JDK 大约是 JRE 的 4 倍 我不想下载它 在 Mac 上安装 JRE 时 它不
  • Java G1 GC 处理引用对象运行缓慢

    我已经在 J ava 上运行了计数器 它24小时工作 每秒点击通过100次左右 白天 GC 处理时间从 20 60 毫秒缓慢上升到 10000 60000 毫秒 然后下降到 20 60 毫秒 这种模式不时地重复 从 GC 日志中我发现 GC
  • 源服务器未找到目标资源的当前表示或不愿意透露该表示存在

    web xml
  • 使用外部硬盘写入和存储 mysql 数据库

    我已经设置了 mysql 数据库在我的 Mac 上使用 java 和 eclipse 运行 它运行得很好 但现在我将生成大约 43 亿行数据 这将占用大约 64GB 的数据 我存储了大量的密钥和加密值 我有一个 1TB 外部我想用作存储位置
  • JDK 7 的快速调试/调试构建

    我正在寻找 JDK 的调试 或者我猜他们称之为快速调试构建 以启用在运行时生成的打印程序集以及查找性能问题时所需的其他诊断 就目前情况而言 我似乎找不到可以直接使用的 现成的 快速调试构建二进制包 有人可以帮我提供下载链接 或者至少提供有关

随机推荐

  • 等待 .net 中的远程进程完成

    我们都知道并且喜欢 Process WaitForExit 给定远程计算机上进程的 pid 由 WMI psexec 创建 我如何等待它结束 对我来说 Process GetProcessByID 只是不起作用 它声称无法连接到机器 这有效
  • Reactjs-在渲染方法中引用状态子元素时应对未定义的错误

    我在以特定方式使用 React 时经常遇到问题 我有一个组件层次结构 应用程序状态位于公共所有者最上面的组件中 我在 getInitialState 中使用空对象或数组设置初始状态 我通过 ajax 调用该组件的 componentDidM
  • Bing 地图 Ajax API - 从地址获取位置

    我正在使用 Microsoft Maps API AJAX 控件 v 7 我想显示地址的 pin 当我使用时 var loc new Microsoft Maps Location 47 592 122 332 var pOptions i
  • 为什么 width:auto 的行为与 height:auto 不同?

    我不明白auto价值 如果应用于height它会影响孩子的身高 但如果应用于width它将占据父级的宽度 没有 MDN 帖子auto值本身 并且 Google 会产生 100 VS auto 命中 而不是 width auto VS hei
  • 如何在 Maven 原型中提供自定义逻辑?

    我对创建 Maven 原型很感兴趣 并且我认为我已经掌握了大部分基础知识 然而 我坚持的一件事是有时我想使用自定义逻辑来填充模板 例如 如果有人生成我的原型并将artifactId指定为hello world 我想生成一个名为HelloWo
  • 在不同项目中对 WebAPI 和 Asp.Net Core 使用同一个身份

    我有一个包含 2 个点网核心项目的解决方案 Web API 网络应用程序 MVC Web 应用程序是 Web API 使用者 我的网络应用程序控制器将使用httpclient为了获取数据 我使用 razor 作为客户端 没有 Angular
  • 使用 Composer create-project 拉取最新提交

    我想用composer create project始终提取我正在使用的开发版本的最新提交 我注意到一个类似的问题 https stackoverflow com questions 36600849 composer create pro
  • JavaFX fxml - 如何将 Spring DI 与嵌套自定义控件一起使用?

    我已经阅读了许多有关将 Spring DI 与 JavaFx 集成的教程 但我遇到了简单示例无法涵盖的障碍 而且我无法弄清楚 我希望视图层和表示层之间完全分离 我想使用 fxml 来定义可组合视图 并使用 Spring 将它们连接在一起 这
  • 当日期选择器关闭时调用函数,当我仅单击日期选择器外部时

    是否可以将日期选择器设置为仅在我单击日期选择器外部时关闭 关闭日历时 如果选择了日期 alertDate函数被调用 代码在这里 https stackblitz com edit react o8dm7y https stackblitz
  • 在函数外部访问函数变量?

    我是初学者 这是我正在上的课程 我知道关于return 但它不允许我在这段代码中做我想做的事情 这是包含变量的函数 def disp cookies This stuff is just for a print display inx 0
  • 在运行时动态修改符号表(C语言)

    是否可以在C运行时动态修改符号表 Linux上的elf格式 我的最终目标如下 在某些函数里面说foo 我想覆盖malloc函数到我的自定义处理程序my malloc 但在外面foo any malloc仍应像 glibc 中那样调用 mal
  • 系统时间与 apache 时间戳不同--?

    我在开发服务器上 当我在 php 中执行此操作时 echo date r time 回复 2010 年 6 月 1 日 星期二 18 10 32 0400 但是 我的计算机时间是 17 10 32 即时时间为 GMT 5 我在哪里配置 ap
  • 是否可以仅更改文本阴影的颜色?

    我有 9 个不同颜色的按钮 红色 橙色 黄色 绿色 蓝色 紫色 粉色 灰白色和石板色 我想知道是否可以仅操纵和更改按钮的颜色text shadow这些按钮的 CSS 属性 同时保持其他值相同 例如 我有两个不同的班级 一个用于 11px 字
  • pandas 返回未命名的列

    以下是我在 Excel 工作表中的数据示例 A B C 1 2 3 4 5 6 我正在尝试使用以下代码获取列名称 p1 list df1t columns values 输出是这样的 A B C Unnamed 3 unnamed 4 un
  • 如何打印包含值的列

    假设我有一个包含以下内容的数据文件 1 2 3 4 5 67 88 12 32 22 9 99 34 59 86 17 0 78 0 77 11 0 0 0 43 我想要一个在每一列中搜索数字 0 的代码 如果找到数字 0 代码将在单独的文
  • 如何使 XmlnsDefinition 在本地程序集上工作?

    我开始使用 XmlnsDefinition 属性将一些 CLR 命名空间绑定到单个 xmlns 中 以便在 XAML 中使用 不幸的是 这似乎只在使用外部程序集时才有效 如果我在与我从 XmlnsDefinition 引用的命名空间中的类型
  • 似乎无法使用 Expo 的 Font.loadAsync 加载自定义字体

    我正在将 React Native 与 Expo 结合使用 除了自定义字体的问题之外 一切都很顺利 我有我的字体Lobster Regular ttf在 assets fonts 中 我一直在尝试加载它 如官方文档中所示 component
  • Android 风格微调器

    我正在努力让我的 Android 应用程序变得更时尚 并取得了一些进展 但旋转下拉菜单给我带来了麻烦 我有一个屏幕截图来向您展示问题 我想要的是背景中的白色框是透明的 就像在后屏幕上与下拉菜单之外的屏幕其余部分一样的灰色覆盖层中 如果我没记
  • kubernetes cronjob 并更新秘密

    下面是我的 python 脚本 用于更新密钥 以便我可以使用 kubectl 部署到 kubernetes 所以它工作得很好 但我想创建一个 kubernetes cron 作业 它将运行 docker 容器来更新 kubernetes 集
  • 无法在 Javadoc 注释中链接到 JDK10

    从 Java 9 升级到 10 后 使用 Javadoc 工具生成文档时 例如 对于导入文件 指向 JDK 的链接不再起作用java util Optional link Optional 呈现为Optional而不是作为Optional