自 2025 年 3 月 27 日起,我们建议您使用 android-latest-release
而非 aosp-main
构建 AOSP 并为其做出贡献。如需了解详情,请参阅 AOSP 的变更。
Rust IDE 设置
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
Android 中对 Rust 的 IDE 支持依赖于 rust-analyzer。rust-analyzer
是一项语言服务器协议,IDE 使用它来了解代码结构并提供代码补全或跳转到定义等功能。在开始之前,请先搜索 rust-analyzer 快速入门文档,了解如何配置 IDE 或编辑器以使用 rust-analyzer
协议。
Android 提供了可让 rust-analyzer
了解 Android Rust 模块构建方式的配置。Soong 生成的文件 rust-project.json
中对此进行了说明。对于某些 IDE(例如 Visual Studio Code),此文件由 aidegen
使用 -l r
选项参数(用于选择 Rust 作为语言)生成。如果您使用的是其他 IDE,请使用以下代码手动生成 rust-project.json
文件:
// Generates rust-project.json in out/soong/
SOONG_GEN_RUST_PROJECT=1 m nothing
// Creates a symbolic link
ln -s $ANDROID_BUILD_TOP/out/soong/rust-project.json $ANDROID_BUILD_TOP
树内的以下位置提供预构建的稳定版 rust-analyzer
:prebuilts/rust/linux-x86/stable/rust-analyzer。
本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-04-04。
[null,null,["最后更新时间 (UTC):2025-04-04。"],[],[],null,["# Rust IDE setup\n\nThe IDE support for Rust in Android relies on [rust-analyzer](https://rust-analyzer.github.io/).\n`rust-analyzer` is a [language server protocol](https://microsoft.github.io/language-server-protocol/)\nused by your IDE to understand the code structure and to provide features\nsuch as code completion or jump-to definition. Before you start, search the\n[rust-analyzer QuickStart](https://rust-analyzer.github.io/) documentation for how to configure your\nIDE or editor to use the `rust-analyzer` protocol.\n\nAndroid provides the configuration that enables `rust-analyzer` to understand\nhow Android Rust modules are built. This is described in the Soong-generated file\n`rust-project.json`. For some IDEs such as Visual Studio Code, this file is\ngenerated by [`aidegen`](https://android.googlesource.com/platform/tools/asuite/+/refs/heads/android16-release/aidegen/README.md#2_basic-usage),\nusing the `-l r` option arguments (to select Rust as the language). If you use\na different IDE, manually generate a `rust-project.json` file with the following code: \n\n // Generates rust-project.json in out/soong/\n SOONG_GEN_RUST_PROJECT=1 m nothing\n // Creates a symbolic link\n ln -s $ANDROID_BUILD_TOP/out/soong/rust-project.json $ANDROID_BUILD_TOP\n\nA prebuilt, stable version of `rust-analyzer` is available in-tree at\n[prebuilts/rust/linux-x86/stable/rust-analyzer](https://cs.android.com/android/platform/superproject/+/android-latest-release:prebuilts/rust/linux-x86/stable/rust-analyzer)."]]