在 npm global install 之后尝试使用软件包附带的命令时找不到模块 `dist/bin/x.js`
Cannot find module `dist/bin/x.js` when trying to use the command that comes with the package after npm global install
你做了 npm install -g aVeryCoolPackage
,当你想在你的 shell 中使用 aVeryCoolPackage
的命令时,你会得到这样的错误:
Error: Cannot find module '/usr/local/lib/node_modules/aVeryCoolPackage/dist/bin/cli.js'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at loadAVeryCoolPackage (/usr/local/lib/node_modules/aVeryCoolPackage/bin/aVeryCoolPackage.js:30:3)
at /usr/local/lib/node_modules/aVeryCoolPackage/bin/aVeryCoolPackage.js:44:5
at LOOP (fs.js:1758:14)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)
在您 cd 进入 /usr/local/lib/node_modules/thePackage
后,您会惊讶地发现文件夹 dist
根本不存在。这很奇怪。您尝试了 npm uninstall -g aVeryCoolPackage
,然后又尝试了 npm install -g aVeryCoolPackage
,但是在尝试使用它的命令时您 运行 遇到了同样的问题。 github 上的其他人都没有 运行 解决这个问题。怎么回事?
在我的例子中,我从 github 克隆了 repo。我在与存储库所在的同一目录中执行了 npm install -g aVeryCoolPackage
,因此它实际上安装了我的本地副本,其中包含 .gitignore
和 dist
文件夹。结果,我在 /usr/local/lib/node_modules/aVeryCoolPackage/
中没有 dist
,并且每次尝试在其中 require
文件时都会抛出找不到模块错误。
有趣的事实:如果你 npm uninstall -g aVeryCoolPackage
和 npm install -g aVeryCoolPackage
在一个不存在存储库克隆的不同目录并因此修复它,你将不知道错误是如何产生的.这将成为节点开发中的谜团之一,有时您会遇到奇怪的错误,然后您就再也看不到它们了。
你做了 npm install -g aVeryCoolPackage
,当你想在你的 shell 中使用 aVeryCoolPackage
的命令时,你会得到这样的错误:
Error: Cannot find module '/usr/local/lib/node_modules/aVeryCoolPackage/dist/bin/cli.js'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at loadAVeryCoolPackage (/usr/local/lib/node_modules/aVeryCoolPackage/bin/aVeryCoolPackage.js:30:3)
at /usr/local/lib/node_modules/aVeryCoolPackage/bin/aVeryCoolPackage.js:44:5
at LOOP (fs.js:1758:14)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)
在您 cd 进入 /usr/local/lib/node_modules/thePackage
后,您会惊讶地发现文件夹 dist
根本不存在。这很奇怪。您尝试了 npm uninstall -g aVeryCoolPackage
,然后又尝试了 npm install -g aVeryCoolPackage
,但是在尝试使用它的命令时您 运行 遇到了同样的问题。 github 上的其他人都没有 运行 解决这个问题。怎么回事?
在我的例子中,我从 github 克隆了 repo。我在与存储库所在的同一目录中执行了 npm install -g aVeryCoolPackage
,因此它实际上安装了我的本地副本,其中包含 .gitignore
和 dist
文件夹。结果,我在 /usr/local/lib/node_modules/aVeryCoolPackage/
中没有 dist
,并且每次尝试在其中 require
文件时都会抛出找不到模块错误。
有趣的事实:如果你 npm uninstall -g aVeryCoolPackage
和 npm install -g aVeryCoolPackage
在一个不存在存储库克隆的不同目录并因此修复它,你将不知道错误是如何产生的.这将成为节点开发中的谜团之一,有时您会遇到奇怪的错误,然后您就再也看不到它们了。