You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Rust多Crate工作区中`game_nft`导入失败(unresolved import)问题求助

Rust多Crate工作区中game_nft导入失败(unresolved import)问题求助

嗨各位Rust大佬,我最近在维护一个多Crate工作区,碰到了一个导入错误,折腾半天没搞定,来请大家帮忙排查下!

我的工作区包含三个Crate:game_nft、backend和tests,根目录的Cargo.toml配置如下:

[workspace]
members = ["backend", "game_nft", "tests"]
resolver = "2"

tests crate的Cargo.toml配置是这样的:

[package]
name = "tests"
version = "0.1.0"
edition = "2021"

[lib]
crate-type = ["cdylib"]

[dependencies]
candid = "0.10.6"
pocket-ic = "6.0.0"
game_nft = { path = "../game_nft" }

我再明确下整个项目的文件结构(刚才写的时候笔误把tests写成test了,这里纠正):

root/
├── Cargo.toml
├── Cargo.lock
├── game_nft/
│   ├── Cargo.toml
│   └── src/
├── tests/
│   ├── Cargo.toml
│   └── src/
├── backend/
    ├── Cargo.toml
    └── src/

我在tests/src/lib.rs里尝试导入game_nft:

use game_nft;

结果直接报了这个错误:

error[E0432]: unresolved import `game_nft`
 --> tests/src/lib.rs:3:5
  |
3 | use game_nft;
  |     ^^^^^^^^ no external crate `game_nft`

我还试过用use crate::game_nft;的写法,结果得到了完全一样的错误提示。

最后附上game_nft的Cargo.toml配置,方便大家排查:

[package]
name = "game_nft"
version = "0.1.0"
edition = "2021"

[lib]
crate-type = ["cdylib"]

[dependencies]
candid = "0.10.6"
ic-cdk = "0.13.1"
ic-stable-structures = "0.6.3"
icrc-ledger-types = "0.1.5"
serde = "1.0.197"
icrc-nft-types = { git = "https://github.com/pramitgaha21/icrc-nft-types.git" }
ciborium = "0.2.2"
serde_bytes = "0.11"

有没有大佬能帮我看看问题出在哪?明明已经在tests的依赖里声明了game_nft,为啥就是找不到这个Crate呢?

备注:内容来源于stack exchange,提问作者IBeFrogs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 10:53:01