Answers:
在您的可执行文件的Cargo.toml中添加一个依赖项,并指定路径:
[dependencies.my_lib]
path = "../my_lib"
或等效的备用TOML:
[dependencies]
my_lib = { path = "../my_lib" }
请查看Cargo文档,以指定依赖项以获取更多详细信息,例如如何使用git存储库而不是本地路径。
version
和并指定path
依赖项,并且path
在发布时将其
git
而不是version
?这样的事情my_lib = { path = "...", git = "..." }
使我可以在开发过程中使用本地副本,并在有人克隆存储库并尝试编译程序时使用远程git?
我一直在寻找等同于的产品mvn install
。尽管此问题与我的原始问题并不完全相同,但是任何偶然发现我的原始问题并点击此处链接的人都将找到更完整的答案。
答案是“没有什么等效的,mvn install
因为您必须在Cargo.toml文件中对路径进行硬编码,这在其他人的计算机上可能是错误的,但是您可以接近。”
现有的答案很简短,为了使事情正常进行,我不得不花了更长的时间,所以这里有更多详细信息:
/usr/bin/cargo run --color=always --package re5 --bin re5
Compiling re5 v0.1.0 (file:///home/thoth/art/2019/radial-embroidery/re5)
error[E0432]: unresolved import `embroidery_stitcher`
--> re5/src/main.rs:5:5
|
5 | use embroidery_stitcher;
| ^^^^^^^^^^^^^^^^^^^ no `embroidery_stitcher` in the root
rustc --explain E0432
包含与Shepmaster的回答相呼应的这一段:
或者,如果您尝试使用外部包装箱中的模块,则可能错过了
extern crate
声明(通常放置在包装箱根中):extern crate core; // Required to use the `core` crate use core::any;
从切换use
到extern crate
让我这个:
/usr/bin/cargo run --color=always --package re5 --bin re5
Compiling embroidery_stitcher v0.1.0 (file:///home/thoth/art/2019/radial-embroidery/embroidery_stitcher)
warning: function is never used: `svg_header`
--> embroidery_stitcher/src/lib.rs:2:1
|
2 | fn svg_header(w: i32, h: i32) -> String
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: #[warn(dead_code)] on by default
Compiling re5 v0.1.0 (file:///home/thoth/art/2019/radial-embroidery/re5)
error[E0603]: function `svg_header` is private
--> re5/src/main.rs:8:19
|
8 | let mut svg = embroidery_stitcher::svg_header(100,100);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
我不得不pub
在那个功能的前面拍
pub fn svg_header(w: i32, h: i32) -> String
现在可以了。