当先锋百科网

首页 1 2 3 4 5 6 7

说明

cargo如果不更换国内源基本上安装插件很难成功,换国内源主要是更换 crate 索引(注册表),目前国内很多大学都提供了不错的同步源。

新建配置文件

# windows系统
C:\Users\Administrator\.cargo\config


# Linux系统
/用户目录/.cargo/config

修改内容

# `source` 就是存储有关要更换的来源名称
[source.tuna]
registry = "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"

[source.crates-io]
replace-with = 'tuna'

提示:
使用 replace-with 字段指明 默认源更换成"tuna"源
[source.tuna] 定义了一个新源, 叫 tuna
这里指定了清华大学源

测试

cargo install cargo-rls-install
cargo rls-install -i nightly-2020-03-19
rustc -V

我的电脑配置参考:

# 放到 `$HOME/.cargo/config` 文件中
[source.crates-io]
registry = "https://github.com/rust-lang/crates.io-index"

# 替换成你偏好的镜像源
replace-with = 'tuna'
#replace-with = 'ustc'
#replace-with = 'zju'

# 清华大学
[source.tuna]
registry = "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"

# 中国科学技术大学
[source.ustc]
registry = "git://mirrors.ustc.edu.cn/crates.io-index"

# 浙江大学
[source.zju]
registry = "https://mirrors.zju.edu.cn/git/crates.io-index.git"


# 上海交通大学
[source.sjtu]
registry = "https://mirrors.sjtug.sjtu.edu.cn/git/crates.io-index"

# rustcc社区
[source.rustcc]
registry = "git://crates.rustcc.cn/crates.io-index"

错误处理

如果配置了源以后还是报错

$ cargo update
    Blocking waiting for file lock on package cache

解决方案

删除$HOME/.cargo/.package-cache文件,然后再执行就好了。