You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Capacitor应用link自定义插件后运行报错No such module 'SomeModule'

问题排查与解决方案

你的操作存在2处可导致该问题的错误,对应修复方式如下:

核心问题原因

1. 依赖声明错误

插件本地构建正常是因为插件开发环境会安装devDependencies下的所有依赖,触发该问题有两种可能:

  • 你把插件自身运行时需要用到的第三方库放在了devDependencies字段下,当插件被应用引入时,npm只会自动安装插件dependencies字段下的依赖,dev依赖不会被同步安装到应用的node_modules中,就会触发依赖不存在的报错。
  • 如果该依赖是要求宿主应用自行安装的公共依赖,你没有将它声明在插件的peerDependencies字段中,也没有在应用侧安装对应版本的依赖。

2. 执行顺序错误

你在应用目录先执行npm link plugin-name再执行npm install,后者会校验依赖树并覆盖你刚创建的软链,要么将本地插件替换为npm源的同名版本,要么直接解除软链关联,导致本地修改的插件没有被正确引入。

修复步骤

  1. 调整插件的package.json配置:
    • 若缺失的依赖是插件自身需要用的,将其从devDependencies移动到dependencies字段下
    • 若缺失的依赖是要求宿主安装的公共依赖,将其添加到插件的peerDependencies字段下,同时在应用的dependencies中安装对应版本的该依赖
  2. 重新执行插件端构建关联操作:
# 插件目录下执行
npm run build
npm link
  1. 调整顺序后执行应用端关联操作:
# 应用目录下执行
npm install
npm link plugin-name
npx cap sync
  1. 若仍报错,先删除应用目录下的node_modules文件夹、package-lock.json(或对应包管理器的锁文件)后,再重新执行上述3步即可。

问题相关截图

插件文件内的报错信息
Capacitor应用关联的框架列表

内容的提问来源于stack exchange,提问作者JeanDArc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 09:18:03