cargo-locate-project(1)

名称

cargo-locate-project - 以 JSON 格式打印 Cargo.toml 文件的位置

概要

cargo locate-project [options]

描述

这个命令会在 stdout 中以 JSON 格式打印清单文件的绝对地址。命令会从当前工作目录出发向上搜索 Cargo.toml 文件。

如果这个项目在一个工作空间 (workspace) 中,会打印该项目而不是工作空间的清单文件。这个行为可以通过 --workspace 标志来改变。工作空间根目录的查找是通过不断向上搜索或者从成员的清单文件中的 package.workspace 字段来得到。

选项

--workspace
定位 Cargo.toml workspace 根目录的位置,而不是当前的 workspace 成员.

显示选项

--message-format fmt
打印项目位置的格式。可选值有:

  • json (默认值): 带着 "root" 字段的 JSON 对象。
  • plain: 仅路径字符串。
-v
--verbose
进行 verbose 输出。可以指定两遍来开启 "very verbose" 模式,输出更多的额外信息,像是依赖项的警告和构建脚本的输出信息。 也可以通过 term.verbose 配置选项 来指定。
-q
--quiet
不打印 cargo log 信息。 也可以通过 term.quiet 配置选项来指定。
--color when
控制*何时*使用彩色输出。可选值有:

  • auto (默认值): 自动检测终端是否支持彩色输出。
  • always: 总是显示彩色。
  • never: 从不显示彩色。

也可以在 term.color 配置选项中设置。

清单选项

--manifest-path path
Cargo.toml 文件的路径。默认情况下,Cargo 会从当前目录或任意的上级目录搜索 Cargo.toml

通用选项

+toolchain
如果 Cargo 由 rustup 安装,那么 cargo 后第一个以 + 开头的参数会被认为是 rustup toolchain 名字(例如 +stable+nightly)。 查看 rustup documentation 了解 toolchain overrides 如何工作。
--config KEY=VALUE or PATH
覆盖一个 Cargo 配置的值。参数应该是一个 TOML 语法的 KEY=VALUE,或者提供一个路径来指向一个额外的配置文件 (configuration file)。 这个标记可以指定多次。 参考 command-line overrides 一节 获取更多信息。
-h
--help
打印帮助信息。
-Z flag
不稳定 (nightly-only) 的标志。 执行 cargo -Z help 获取详细信息。

环境

查看 the reference 获取 Cargo 读取的环境变量的更多信息。

退出状态

  • 0: Cargo 执行成功。
  • 101: Cargo 没有执行完成。

使用案例

  1. 基于当前路径,显示清单文件(manifest)的路径。

    cargo locate-project
    

其他参考

cargo(1), cargo-metadata(1)