我向 Rust 项目添加了依赖项,然后运行了 Cargo Run,这给了我这个错误:
“阻塞等待包缓存上的文件锁定”
我尝试了在网上找到的解决方案,即删除 ~/.cargo/.package-cache 文件,但这对我来说不起作用。当我输入类似“cargo run”和“cargo update”的命令时,我只会收到相同的消息。 现在,即使当我转到另一个没有依赖项的 Rust 项目并尝试运行它时,我也会收到相同的“阻止等待包缓存上的文件锁定”消息。 我使用的是 M1 MacBook Pro。
我也遇到了同样的问题。我使用的是 Linux,解决方法如下:
关闭 VS Code,以便
rust-analyzer
扩展程序将无法重新启动 cargo
、rust-analyzer
或 rustc
。
使用资源监控工具(我使用btop)并搜索
rust
。杀死cargo
、rust-analyzer
和rustc
。单击该进程,然后按 k
然后按 enter
将其杀死。
再次尝试使用
cargo r
,它应该可以正常工作,而不显示 "Blocking waiting for file lock on package cache"
。
我仍然不知道如何阻止 VS Code 自动开始下载包。如果您可以阻止 VS Code 自动下载,而是在调用
cargo r
时手动下载包,则可以通过按 ctrl+c
来停止该过程,从而在当时的互联网连接速度较慢时停止下载。
我的错误解决方案:
cd ~/.cargo
rm .package-cache
在这些之后货物运行工作正常