当我尝试在Windows命令提示符中通过声明其位置来运行node.js
程序时,它总是会说:
[声明的位置]不被识别为内部或外部命令,可操作程序或批处理文件。
在所有类似问题的答案中,在所有node.js
手册中,假设您可以通过从其位置调用node.js
文件来运行它。在建立服务器等之前,总会有建议尝试一些hello world
示例。
即使我用prompt $ cmd
清除命令提示符,然后手动编写整个位置,我也收到相同的消息。
当我跑步时
echo %path%
我得到C:\Program Files\nodejs\bin
当我跑步时
node -v
我得到v6.10.3
当我跑步时
node a00.js
(其中a00.js
是脚本的名称),它认为整个路径是一个模块,因此它表示cannot recognize that module
。
如果我使用prompt $ cmd
清除命令提示符然后运行node a00.js
,它会认为a00.js
是一个模块,因此它说cannot recognize that module
。
答案 0 :(得分:1)
您的路径知道node.js
的位置,但不知道a00.js在哪里。因此,您需要以node
运行命令,然后运行文件路径。 (复制所有命令,包括双引号)
node "C:\Program Files\nodejs\a00.js"
举个例子,试试这个。
创建一个名为hello.js
的文件,将其保存在C:\Windows\Temp\
(或您喜欢的位置)
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(1337, "127.0.0.1");
console.log('Server running at http://127.0.0.1:1337/');
现在打开cmd
并按此运行(假设您将其保存在C:\Windows\Temp\
node "c:\Windows\Temp\hello.js"
如果你从路径运行它,意味着你CD
到a00.js文件所在的目录,那么只能将它作为`node a00.js
作为示例,假设a00.js
中存在C:\Windows\Temp
:
cd c:\Windows\Temp
node a00.js
使用任何路径时,重要提示,请始终用双引号将其括起来。
这会导致错误:
node C:\Program Files\test\a00.js
这将有效:
node "C:\Program Files\test\a00.js"
答案 1 :(得分:-1)
当node.js抱怨模块不存在时,我遇到了类似的问题,这是因为它允许您使用文件名保存例如If statement.js,但是当您在Commander中调用它时,它不喜欢它,因此请尝试更改文件名并运行它,可能会解决类似的问题