节点模块路径执行Windows 10

问题描述 投票:1回答:1
$ npm install -g static-server
C:\Users\Stuart's\AppData\Roaming\npm\static-server -> C:\Users\Stuart's\AppData\Roaming\npm\node_modules\static-server\bin\static-server.js
+ [email protected]
added 13 packages from 6 contributors in 1.238s

Stuart's@Stuarts-PC MINGW64 ~/Documents/GitHub/PIES-Network/dapp (master)
$ static-server
module.js:549
    throw err;
    ^

Error: Cannot find module 'C:\c\Users\Stuart's\AppData\Roaming\npm\node_modules\static-server\bin\static-server.js'
    at Function.Module._resolveFilename (module.js:547:15)
    at Function.Module._load (module.js:474:25)
    at Function.Module.runMain (module.js:693:10)
    at startup (bootstrap_node.js:191:16)
    at bootstrap_node.js:612:3

显然“C:\ c \ User ..”不是我的节点模块目录的正确路径。我检查了我的本地路径,一切看起来都很好。任何帮助表示赞赏谢谢

node.js windows
1个回答
1
投票

这看起来很像你不小心创建了一个名为C:\c\Users\Stuart's\AppData\Roaming\npm的目录,其中位于文件static-server.cmd。你有一个路径变量指向那里也不知何故。

调用static-server时,控件将传递到此错误位置的static-server.cmd批处理文件。

node 'C:\c\Users\Stuart's\AppData\Roaming\npm\node_modules\static-server\bin\static-server.js

static-server.js位于您的安装位置:

C:\Users\Stuart's\AppData\Roaming\npm\node_modules\static-server\bin\static-server.js

在这些情况下,您将获得所显示的错误。

这可能是一些变化,我很乐意进一步帮助,但第1步是检查上面因为肯定错误的路径参数传递给节点(当然加载并执行static-server.js)。

编辑:这是一些进一步的测试:

  1. 在硬盘上搜索“static-server”的所有实例。尝试使用资源管理器执行此操作需要很长时间。最好和最快的方法是下载名为UltraSeach的工具。 以下是我的PC的搜索结果(我为测试目的创建了额外的C:\ c目录)。

enter image description here

  1. 检查static-server.cmd的多个版本或该名称的其他可执行文件。
  2. 使用文本编辑器(如记事本)打开每个static-server.cmd文件并在顶部添加这些ECHO命令(即在线条staret与@IF EXIST "%~dp0\node.exe" (之前 ECHO "File 1 executing" ECHO "%~dp0" PAUSE

如果多个版本放置“文件2”,“文件3”等。

  1. 现在在命令提示符下键入static-server它应该回显消息“File n execution”回显它正在执行的目录等待你按一个键继续..... 注意它正在执行的目录(称之为\ CURRENT说)
  2. 你可以从static-server.cmd看到它然后启动节点并尝试执行\ CURRENT \ node_modules \ static-server \ bin \ static-server.js 在你的情况下,它找不到static-server.js节点期望找到它。
  3. 回顾第1步中的搜索结果,看看static-server.js实际位于何处。将此与节点期望在步骤5中找到它的位置进行比较。

您的问题是:正在执行的static-server.cmd位于错误的位置或者static-server.js位于错误的位置。

  1. 这是一个额外的测试。打开命令窗口并导航到具有static-server.js的目录。根据屏幕截图,在我的情况下,它是在C:\Users\Brendan\AppData\Roaming\npm\node_modules\static-server\bin

然后输入node static-server.js。这完全绕过了static-server.cmd文件,应该启动服务器。在我的案例中工作。

让我知道你怎样去!

© www.soinside.com 2019 - 2024. All rights reserved.