【问题标题】:found a virtual manifest at <path> instead of a package manifest在 <path> 找到了一个虚拟清单而不是包清单
【发布时间】:2020-04-13 13:40:58
【问题描述】:

在询问之前我在这个网站上搜索了[rust] "instead of a package manifest",并没有找到任何结果。我还阅读了有关虚拟清单 here 的信息,但没有解决我的问题。

我的目标是更改azul

为了实现这一点,我阅读了有关修补依赖项here 的信息,现在我有了这个Cargo.toml

[package]
name = "my_first_azul_app"
version = "0.1.0"
authors = ["Name <Email>"]
edition = "2018"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
azul = { git = "https://github.com/maps4print/azul" }

[patch."https://github.com/maps4print/azul"]
azul = { path = "../azul" }

在路径../azul 中,我使用git clone 签出了azul 项目。在main.rs我已经关注this得到,

extern crate azul;

fn main() {
    println!("Hello world!");
}

然后我尝试测试

$ cargo run
error: failed to resolve patches for `https://github.com/maps4print/azul`

Caused by:
  failed to load source for a dependency on `azul`

Caused by:
  Unable to update /home/name/projects/azul

Caused by:
  found a virtual manifest at `/home/name/projects/azul/Cargo.toml` instead of a package manifest

我不明白最后造成的线路。 如果我删除 [patch] 配置,它“工作”。 引用是因为它无法编译,但这就是我试图检查它并尝试修复的原因。开发azul 依赖项需要支付哪些费用?

TIA,

【问题讨论】:

    标签: rust rust-cargo


    【解决方案1】:

    看起来 azul 正在使用工作区,因此如果您想通过路径引用它,您必须指向该工作区的确切成员。

    azul 的 Cargo.toml 包含

    
    [workspace]
    members = [
        "cargo/azul",
        "cargo/azul-css",
        "cargo/azul-core",
        "cargo/azul-layout",
        "cargo/azul-text-layout",
        "cargo/azul-widgets",
        "cargo/azul-css-parser",
        "cargo/azul-native-style",
    ]
    
    

    所以我相信您应该能够执行以下操作:

    
    [dependencies]
    azul = { path = "../azul/cargo/azul"
    azul-css = { path = "../azul/cargo/azul-css" }
    
    

    你可能需要那里的所有/部分成员。

    【讨论】:

      猜你喜欢
      • 2019-05-03
      • 2018-05-12
      • 2021-12-16
      • 2020-02-27
      • 1970-01-01
      • 2022-06-27
      • 1970-01-01
      • 2020-11-30
      • 2022-08-09
      相关资源
      最近更新 更多