gpt4 book ai didi

node.js - NodeJS - 如何解决本地模块上的 “Cannot find module” 错误?

转载 作者:太空宇宙 更新时间:2023-11-03 23:37:46 24 4
gpt4 key购买 nike

我知道最好的 npm 安装是使用 npm install ,但是在我使用的专业服务器上是被禁止的。另外,我必须通过脏的git clone <node_module_git_repository>安装我的node_modules .

通过 git,我的模块复制良好并且运行良好:

node ./node_modules/.bin/http-server

但是失败了:

node http-server

我得到错误:

module.js:340
throw err;
^
Error: Cannot find module '/data/yug/projects_active/make-modules/http-server'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:935:3

我假设不执行 npm install 会使我的 Node 模块不在路径中。 我怎样才能修复这个问题到我的 git 克隆本地模块通过 node <module_name> 运行?

最佳答案

你问的咒语不会起作用。 node 可执行文件需要一个 javascript 文件的路径来执行。该路径可以是相对于当前工作目录的路径,也可以是绝对路径,但仅此而已。它不会像 require 在 Node.js 程序中搜索 node_modules 或 NODE_PATH。

当您运行 ./node_modules/.bin/http-server 时,您的 shell 正在执行该文件,该文件以类似于 #!/usr/bin/env node 的 shebang 行开头,它处理正在运行的 Node 并将其传递给您的 http-server 文件的路径。

如果您希望 node http-server 工作,请在 make-modules 目录中创建一个符号链接(symbolic link):cd make-modules && ln -nsf ./node_modules/.bin/http-server

关于node.js - NodeJS - 如何解决本地模块上的 “Cannot find module” 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29647932/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com