< 返回版块

sven 发表于 2023-04-14 20:07

Tags:android

比如 把http://aospxref.com/android-13.0.0_r3/xref/system/security/keystore2/ 中的代码导入到vscode,但是提示错误,无法关联函数、变量等,不方便阅读、编辑。 [ERROR rust_analyzer::config] failed to find any projects in [AbsPathBuf("z:\code\gsi13aidl\system\security\keystore2")] [ERROR rust_analyzer::main_loop] FetchWorkspaceError: rust-analyzer failed to discover workspace

或者有没有其它工具可以把android的rust代码导入到vscode 并且可以进行函数关联、编辑代码自动补全?


Ext Link: http://aospxref.com/android-13.0.0_r3/xref/system/security/keystore2/

评论区

写评论
YM14532 2023-04-26 15:49

http://aospxref.com/android-13.0.0_r3/xref/packages/modules/Virtualization/ 我也是一样方法导入的。 你这个失败应该是目录没有 cargo 配置的导致的。 rust-analyzer 默认应该只认识 cargo 的编译配置,android 源码用的 soong ,不知道要怎么配置。

--
👇
sven: 我也是在windows下导入的,就直接在vscode的file->open folder中打开某个代码目录,但是rust-analyzer 插件就会报上面的错误。您是怎么导入的呢?

另外在 android官网找到一篇文章,https://source.android.google.cn/docs/setup/build/rust/building-rust-modules/rust-ide-setup?hl=zh-cn,介绍说Android 提供了可让 rust-analyzer 了解 Android Rust 模块构建方式的配置。根据文章中的说明我在vscode中导入了整个源码,rust-analyzer 也没有报错了,但是依然不能关联代码 自动跳转。

作者 sven 2023-04-23 18:07

我也是在windows下导入的,就直接在vscode的file->open folder中打开某个代码目录,但是rust-analyzer 插件就会报上面的错误。您是怎么导入的呢?

另外在 android官网找到一篇文章,https://source.android.google.cn/docs/setup/build/rust/building-rust-modules/rust-ide-setup?hl=zh-cn,介绍说Android 提供了可让 rust-analyzer 了解 Android Rust 模块构建方式的配置。根据文章中的说明我在vscode中导入了整个源码,rust-analyzer 也没有报错了,但是依然不能关联代码 自动跳转。

YM14532 2023-04-20 21:14
  • rust-analyzer 插件可以;但是前提是必须 build 通过。 我导入了一部分 android 的源码,但是有部分编译不过,能编过的就可以跳转和自动补全。没编译通过的就不行。我是在 windows 平台导入的。

  • 我的报错是 Linux.h 找不到类似的,还没找到解决方法,我感觉跟android 的 soong 的编译方式没支持好有关,rust 模式的编译工具是 cargo。你有条件的话可以试试在 linus 平台导入试试,我这边暂时没有环境。

1 共 3 条评论, 1 页