我正在通过使用rand板条箱创建小程序来练习rust(1.36)。但是问题是每当我使用创建新项目cargo new然后在中添加rand依赖项时cargo.toml。它连接到互联网并rand再次下载相同的软件包。
与Python相比,已安装的软件包转到site_package文件夹,并可供导入/使用到任何程序。无需再次下载。
我的问题是,如何告诉货物寻找已经安装的本地板条箱,而不是再次下载?
即使在现代Python中,人们也不仅会使用全局可用的site_packages目录并“污染”全局可用的软件包,而且还会使用虚拟环境来维护每个项目的正确版本控制-类似于这样cargo做。
使用cargo,一旦下载了所有软件包并在项目中明确指定了它们的版本,就可以--offline在编译项目时传递new
标志,在这种情况下cargo ,无需访问网络即可运行:
$ cargo build --offline
Run Code Online (Sandbox Code Playgroud)
话虽如此,做您描述的事情当然是完全可能的:
$ mkdir offline_resources
$ cd offline_resources
Run Code Online (Sandbox Code Playgroud)$ git clone https://github.com/rust-random/rand.git
$ cd rand
$ cargo build
Run Code Online (Sandbox Code Playgroud)$ cd ../..
$ cargo new use_offline
$ cd use_offline
Run Code Online (Sandbox Code Playgroud)Cargo.toml:
[dependencies]
rand = { path="../offline_resources/rand", version="0.7.0" }
Run Code Online (Sandbox Code Playgroud)$ cargo build --offline
Run Code Online (Sandbox Code Playgroud)rand依赖项的项目。| 归档时间: |
|
| 查看次数: |
148 次 |
| 最近记录: |