货物sqlx准备生成存根文件——即使启用了“离线”功能

rya*_*yan 4 rust rust-sqlx

我正在使用一些 sqlx::query!和 sqlx::query_as! 我的项目编译得很好。但是当我运行 Cargo sqlxprepare 时,我首先得到错误:

$ cargo sqlx prepare
error: extra arguments to `rustc` can only be passed to one target, consider filtering
the package by passing, e.g., `--lib` or `--bin NAME` to specify a single target
error: `cargo check` failed with status: exit status: 101
Run Code Online (Sandbox Code Playgroud)

然后当我用“--lib”运行它时,我得到:

$ cargo sqlx prepare -- --lib
   Compiling crate v0.1.0 (/Users/ryan/Documents/crate)
    Finished dev [unoptimized + debuginfo] target(s) in 5.78s
warning: no queries found; please ensure that the `offline` feature is enabled in sqlx
query data written to `sqlx-data.json` in the current directory; please check this into version control
Run Code Online (Sandbox Code Playgroud)

我使用 --bin 得到类似的输出。

我在这里做错了什么?

Ezi*_*yev 6

以前有过同样的情况,但可以在他们的文档中找到有用的信息。首先重新安装 sqlx-cli,而不是仅运行cargo sqlx prepare -- --libsqlx-cli,如下所示:

cargo install sqlx-cli && cargo sqlx prepare -- --lib
Run Code Online (Sandbox Code Playgroud)