VSCode的"go to definition"功能无法正常工作

VSCode的

22解决方法是取消勾选 C_Cpp > Default > Limit Symbols To Included Headers。不同情况可能有所不同,祝你好运!

- Daniel Ames3你能解释一下为什么这可能会奏效吗? - Stun Brick3我希望我能,我的朋友。这个非常普遍的问题似乎有无数可能的原因。只要谷歌一下,你就会找到很多不同的答案。既然没有什么简单有效的方法,我就开始查看自己的设置,寻找可疑的东西。我看到这个,就想着,“嗯,如果只搜索包含符号的内容,那就不好了。” 因为我的项目是针对UEFI的,它的定义分散在数百个文件中,都是通过uefi构建而不是传统的# include进行链接和包含的。 - Daniel Ames同意,这几乎是不可能找出的。禁用/启用所有扩展程序(见下文),对于导入类型的TypeScript(扩展名为.d.ts),通常可以解决问题;对于Angular,据说应该安装Angular语言服务扩展;在其他场合,包括纯JavaScript,只能猜测... :-/ - Frank N回答链接11对于Python,请确保您的代码分析设置正确。在我的情况下,languageServer被意外设置为“None”。将其恢复为“default”或“pylance”,问题就会得到解决。

- Sumeet Singh回答链接11我在Ubuntu 20.04上使用OpenJDK 11版本(apt中的openjdk-11-jdk)遇到了类似的Java问题。起初我没有安装JRE,所以我安装了它,但仍然无法正常工作。之后,我去了CTRL + SHIFT + P菜单,然后到Java: Configure Java Runtime,在Java Tooling Runtime选项卡中,我看到/usr/lib/jvm/java-11-openjdk-amd64被选择了,我将其更改为/usr/lib/jvm/java-1.11.0-openjdk-amd64,只是为了看看是否可以工作,重启后它确实可以了。我不确定为什么会这样,但我希望这可以帮助其他人。

- Devyzr回答链接11如果您的电脑上有多个语言版本,请在VScode中指定您正在使用的确切语言版本(例如,我正在使用Python,因此必须在VS Code中指定Python解释器的版本)。如果您无法这样做,那么请卸载所有未使用的其他版本,然后在进入VS Code时,它会要求选择要使用的版本,这样您就只有一个版本,当您选择版本时,“转到定义”功能将被激活。

- Nikhil MVS回答链接00检查语言扩展或智能感知是否正常工作。您可以尝试更新扩展或智能感知,或者检查该功能是否支持您正在使用的语言。

对于我来说,是C/C++,我重新安装了扩展程序,问题得以解决。

- Haseeb Mir回答链接00在我的情况下,我只需安装名为"C/C++ Extension Pack"的扩展,重启VS Code,然后一切正常。

- Charlie回答链接00如果以上方法都不起作用,我想提醒一下,在我的情况下,我在VS Code中使用了Kite扩展程序,我只是将其禁用后问题得到解决。我认为Kite扩展程序阻止了这个功能。

- Rushbh回答链接00不需要做任何事情。只需关闭并重新打开即可。它会起作用的。

- Vinit Bodhwani回答链接00带着相同的问题来到这个问答中,但是在一个 Golang 项目中,

查看定义和按 F12 没有生效(它们说“没有定义”,但实际上是有的),

我的问题是由于不一致的依赖版本引起的 go.mod 问题,下面是我在 VS code 底部遇到的错误:

我通过运行go mod tidy + go mod vendor解决了这个问题。

在其他一些语言中,您可能需要采用相同的方法。

- Arsham Arya回答链接00操作系统:Linux Ubuntu 22.04

如果你遇到以下错误:

"找不到 .NET Core SDK。将无法启用 .NET Core 调试。请确保已安装 .NET Core SDK 并且在路径中。"

通常情况下,Vscode 无法找到 .Net sdk,需要手动设置路径。

sudo ln -s /snap/dotnet-sdk/current/dotnet /usr/local/bin/dotnet

重新启动Omnisharp和VSCode

- Mehran Khan回答链接

相关推荐

句句在理的英文翻译
365账号被限制什么原因

句句在理的英文翻译

09-01 👁️ 3718
院子全封闭屋顶用什么材料合适?和阳光房有什么关系?
365账号被限制什么原因

院子全封闭屋顶用什么材料合适?和阳光房有什么关系?

07-20 👁️ 3288