如何将GitHub上Cargo工作区的sui-keys crate作为项目依赖?
正确配置sui-keys依赖的方法
你之前的配置存在两处问题:一是依赖区块的定义重复,二是未明确指定工作仓内子crate的定位方式。
Git源配置(推荐)
直接通过Git仓库引用时,需要明确指定工作仓中的子crate名称,正确写法如下:
[dependencies] sui-keys = { git = "https://github.com/MystenLabs/sui", package = "sui-keys" }
如果需要锁定到特定版本(比如官方发布的标签),可以追加tag参数:
[dependencies] sui-keys = { git = "https://github.com/MystenLabs/sui", package = "sui-keys", tag = "v1.10.0" }
本地路径配置(适合调试)
若你已经本地克隆了Sui仓库,可直接通过路径引用子crate,修改路径为你本地Sui仓库的实际位置即可:
[dependencies] sui-keys = { path = "../sui/crates/sui-keys" }
原配置失效原因说明
- 你写了
[dependencies.sui-keys]这个专属区块后,区块内不需要再重复写sui-keys = {...},直接在区块内配置参数即可(更推荐用[dependencies]统一管理所有依赖)。 - Sui采用工作仓结构,所有功能子crate都放在
crates目录下,直接指定Git源时必须通过package字段明确子crate名称,否则Cargo无法在工作仓中定位到目标包。
内容的提问来源于stack exchange,提问作者Jim
相关产品推荐
相关产品推荐

