How do I share common code between Rust projects w

2020-03-01 07:14发布

There may not be a good answer for this question, but I have code that I would like to share between two different Rust projects WITHOUT publishing the crate to crates.io.

The code is proprietary and I don't want to put it out into the wild.

1条回答
孤傲高冷的网名
2楼-- · 2020-03-01 07:38

but it's proprietary code and I don't want to put it out into the wild.

You don't have to publish a crate. Specifically, just create the crate (cargo new shared_stuff) then specify the path to the common crate(s) in the dependent project's Cargo.toml:

[dependency.shared_stuff]
path = "path/to/shared/crate"

The Cargo documentation has an entire section on types of dependencies:

I believe that Cargo will allow you to fetch from a private git repository (such as on Github or another privately hosted service, such as GitLab), but I haven't tried that personally. Based on my searching, you will need to have previously authenticated or otherwise configured git to not require an interactive password entry.


It's theoretically possible to create your own crate registry. I've not even attempted to do this, but the machinery is present in Cargo to handle it.

查看更多
登录 后发表回答