check-native-modules
v0.0.1
Published
一个用于检查项目中是否存在原生依赖(Native Modules)的 CLI 工具。
Readme
check-native-modules
一个用于检查项目中是否存在原生依赖(Native Modules)的 CLI 工具。
简介
此工具可以扫描项目的 node_modules 和 package.json,识别出所有直接或间接依赖的原生模块(C/C++ Addons)。这对于跨平台部署(如 Alpine Linux, Serverless 环境)或排查构建问题非常有帮助。
使用方法
无需安装,直接通过 npx 使用:
npx check-native-modules或者全局安装:
npm install -g check-native-modules
check-native-modules功能
- 自动扫描当前目录下的依赖树。
- 识别原生模块(通过
binding.gyp、gypfile、prebuild-install等特征)。 - 区分 直接依赖 和 间接依赖。
- 对于间接依赖,显示其引入路径(即哪个包依赖了它)。
示例输出
Found 2 native modules:
[Direct] [email protected]
[Indirect] [email protected]
Requested by: chokidar原理
使用 @npmcli/arborist 解析实际安装的依赖树 (loadActual),并检查每个包的元数据及文件结构特征来判断是否为原生模块。如果 node_modules 不存在,会尝试读取 package-lock.json (loadVirtual) 进行静态分析(准确度可能较低)。
