在VScode-SSH中Rust工程不能代码间跳转的原因
今天正常使用VScode-SSH访问虚拟机,但是发现读代码的时候不能使用ctrl+左键
的方式跳转,然后看到Rust-Analyzer
(VScode的Rust语言插件)报错.
2024-09-08T02:25:28.998500Z ERROR failed to find any projects in [AbsPathBuf("/home/winddevil/App")]
2024-09-08T02:25:29.002582Z ERROR FetchWorkspaceError: rust-analyzer failed to discover workspace
2024-09-08T02:25:29.020803Z ERROR FetchWorkspaceError: rust-analyzer failed to discover workspace
同时出现这样的错误.
但是把鼠标放在上边,点按Restart Server
尝试重启仍旧无效.
后来仔细观察了报错内容,是无法找到Rust工程.
可见它只在我们当前的路径~/App
下寻找这个工程.把鼠标放到左下角的红色报错上,显示如下内容:
Failed to discover workspace.
Consider adding the `Cargo.toml` of the workspace to the [`linkedProjects`]([https://rust-analyzer.github.io/manual.html#rust-analyzer.linkedProjects) setting](vscode-file://vscode-app/d:/00_Application/05_vscode/Microsoft%20VS%20Code/resources/app/out/vs/code/electron-sandbox/workbench/workbench.html "https://rust-analyzer.github.io/manual.html#rust-analyzer.linkedProjects) setting").
Failed to load workspaces.
可见Rust-Analyzer
是想要找到Cargo.toml
但是具体是怎么找就不知道了.
这时候我们只需要切换到具体的工程文件就行了,比如我这里是~/App/rCore-Tutorial-Code-2024S
,我就通过SSH,进行切换.
直接选择打开刚刚路径的工程文件即可.
这时候就没有报错了: