0

我正在通过一些 Salesforce 闪电培训,作为其中的一部分,我安装了他们的 CLI,称为 SFDX。我使用 .bashrc 文件中的这一行将 SFDX bin 添加到路径中。

PATH=~/sfdx/bin:$PATH

作为闪电网络组件开发的一部分,使用了 jest 测试框架。我发现在尝试使用 运行一些示例测试npm run test:unit时,我会收到以下错误。

internal/modules/cjs/loader.js:626
throw err;
^

Error: Cannot find module 'semver'
Require stack:
- /usr/share/npm/lib/utils/unsupported.js
- /usr/share/npm/bin/npm-cli.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:623:15)
    at Function.Module._load (internal/modules/cjs/loader.js:527:27)
    at Module.require (internal/modules/cjs/loader.js:681:19)
    at require (internal/modules/cjs/helpers.js:16:16)
    at Object.<anonymous> (/usr/share/npm/lib/utils/unsupported.js:2:14)
    at Module._compile (internal/modules/cjs/loader.js:774:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:785:10)
    at Module.load (internal/modules/cjs/loader.js:641:32)
    at Function.Module._load (internal/modules/cjs/loader.js:556:12)
    at Module.require (internal/modules/cjs/loader.js:681:19) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/usr/share/npm/lib/utils/unsupported.js',
    '/usr/share/npm/bin/npm-cli.js'
  ]
}

我尝试重新安装 npm、node 和 sfdx。我还发现了关于该主题的讨论: https ://askubuntu.com/questions/1152570/npm-cant-find-module-semver-error-in-ubuntu-19-04 但是,没有一个建议的解决方案对我有帮助。

在 sfdx bin 目录中有一个名为 npm 的文件,其中只有以下内容:

#!/usr/bin/env node
require('../lib/cli.js')(process)

我在这里没有过多的经验,所以我不知道它想做什么。如果我从路径中删除 sfdx,所有 npm 命令都可以正常运行,但是我不能使用对我来说必不可少的那些命令来完成这项工作。

感谢您的任何建议!

4

0 回答 0