如何在 Ubuntu 21.04 上使用 OpenJDK 11 查看 Visual Studio 代码中的 Java 标准库文档弹出窗口?
How to view Java standard library documentation popup in Visual Studio Code with OpenJDK 11 on Ubuntu 21.04?
针对 Eclipse 提出了类似的问题:Add Java Docs in Eclipse working on OpenJDK
我在我的系统上找到了 /usr/lib/jvm/java-11-openjdk-amd64/lib/src.zip。
构建和运行源文件有效。显示通过 Maven 加载的依赖项的文档。 Java 标准库的文档丢失。
示例:
悬停在
System.out.println("test");
显示
void java.io.PrintStream.println(String x)
我想在这里查看 javadoc。
正在使用:
new DefaultCamelContext();
显示:
org.apache.camel.impl.DefaultCamelContext.DefaultCamelContext()
Creates the ModelCamelContext using
org.apache.camel.support.DefaultRegistry as registry.
Use one of the
other constructors to force use an explicit registry.
编辑:
相关安装的 Visual Studio 代码扩展是:
- Red Hat Java(TM) 的语言支持
- Java
的调试器
- Java 测试员
- Java
的 Maven
- Java
的项目经理
- Visual Studio IntelliCode
这些是通过 official Java Extension Pack from Microsoft 安装的。
edit2: 我的用户 settings.json
{
"telemetry.enableTelemetry": false,
"telemetry.enableCrashReporter": false,
"editor.fontFamily": "'Ubuntu Mono', 'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback'",
"files.autoSave": "onFocusChange",
"window.zoomLevel": 3,
"editor.wordWrap": "bounded",
"yaml.schemas": {
"file:///toc.schema.json": "/toc\.yml/i"
},
"window.menuBarVisibility": "default",
"rust-analyzer.checkOnSave.command": "clippy",
"editor.minimap.enabled": false,
"editor.cursorBlinking": "solid",
"rust-analyzer.checkOnSave.enable": false,
"explorer.sortOrder": "mixed",
"rust-analyzer.lens.methodReferences": true,
"rust-analyzer.lens.references": true,
"rust-analyzer.lruCapacity": 512,
"workbench.colorTheme": "Default Dark+",
"editor.suggestSelection": "first",
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
"files.exclude": {
"**/.classpath": true,
"**/.project": true,
"**/.settings": true,
"**/.factorypath": true
},
"java.home": "/usr/lib/jvm/java-11-openjdk-amd64",
"java.configuration.runtimes": [
{
"name": "JavaSE-11",
"path": "/usr/lib/jvm/java-11-openjdk-amd64",
"default": true
}
]
}
我的工作区settings.json是空的
您可以尝试使用 this extension pack (it contains the extension Language Support for Java(TM) by Red Hat,当鼠标悬停在 Java 代码上时,它会提供您正在寻找的信息:
确保还启用了工具提示。您可以阅读有关启用它们的信息 。
当我将鼠标悬停在 println()
上时,描述与您可以通过 Ctrl+单击 方法获得的评论相同:
Java 扩展无法检测和显示文档,即使它们根本不存在于 jdk 中。你可以在你的项目中试试,看看你安装的java有没有文档。
您可以尝试安装 openjdk-src 或 openjdk-doc 软件包吗?参见 OpenJDK。
或安装另一个java版本并在vscode中设置为java.home
,看看这个问题是否仍然存在。
针对 Eclipse 提出了类似的问题:Add Java Docs in Eclipse working on OpenJDK
我在我的系统上找到了 /usr/lib/jvm/java-11-openjdk-amd64/lib/src.zip。
构建和运行源文件有效。显示通过 Maven 加载的依赖项的文档。 Java 标准库的文档丢失。
示例:
悬停在
System.out.println("test");
显示
void java.io.PrintStream.println(String x)
我想在这里查看 javadoc。
正在使用:
new DefaultCamelContext();
显示:
org.apache.camel.impl.DefaultCamelContext.DefaultCamelContext()
Creates the ModelCamelContext using org.apache.camel.support.DefaultRegistry as registry.
Use one of the other constructors to force use an explicit registry.
编辑: 相关安装的 Visual Studio 代码扩展是:
- Red Hat Java(TM) 的语言支持
- Java 的调试器
- Java 测试员
- Java 的 Maven
- Java 的项目经理
- Visual Studio IntelliCode
这些是通过 official Java Extension Pack from Microsoft 安装的。
edit2: 我的用户 settings.json
{
"telemetry.enableTelemetry": false,
"telemetry.enableCrashReporter": false,
"editor.fontFamily": "'Ubuntu Mono', 'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback'",
"files.autoSave": "onFocusChange",
"window.zoomLevel": 3,
"editor.wordWrap": "bounded",
"yaml.schemas": {
"file:///toc.schema.json": "/toc\.yml/i"
},
"window.menuBarVisibility": "default",
"rust-analyzer.checkOnSave.command": "clippy",
"editor.minimap.enabled": false,
"editor.cursorBlinking": "solid",
"rust-analyzer.checkOnSave.enable": false,
"explorer.sortOrder": "mixed",
"rust-analyzer.lens.methodReferences": true,
"rust-analyzer.lens.references": true,
"rust-analyzer.lruCapacity": 512,
"workbench.colorTheme": "Default Dark+",
"editor.suggestSelection": "first",
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
"files.exclude": {
"**/.classpath": true,
"**/.project": true,
"**/.settings": true,
"**/.factorypath": true
},
"java.home": "/usr/lib/jvm/java-11-openjdk-amd64",
"java.configuration.runtimes": [
{
"name": "JavaSE-11",
"path": "/usr/lib/jvm/java-11-openjdk-amd64",
"default": true
}
]
}
我的工作区settings.json是空的
您可以尝试使用 this extension pack (it contains the extension Language Support for Java(TM) by Red Hat,当鼠标悬停在 Java 代码上时,它会提供您正在寻找的信息:
确保还启用了工具提示。您可以阅读有关启用它们的信息
当我将鼠标悬停在 println()
上时,描述与您可以通过 Ctrl+单击 方法获得的评论相同:
Java 扩展无法检测和显示文档,即使它们根本不存在于 jdk 中。你可以在你的项目中试试,看看你安装的java有没有文档。
您可以尝试安装 openjdk-src 或 openjdk-doc 软件包吗?参见 OpenJDK。
或安装另一个java版本并在vscode中设置为java.home
,看看这个问题是否仍然存在。