将节点路径更改为当前目录

时间:2017-02-07 04:52:26

标签: node.js

我试图从我的用户目录

运行此命令
NODE_ENV=~/Public/project node socket.js

但它会返回此错误

Error: Cannot find module '/home/user/socket.js'
    at Function.Module._resolveFilename (module.js:470:15)
    at Function.Module._load (module.js:418:25)
    at Module.runMain (module.js:605:10)
    at run (bootstrap_node.js:418:7)
    at startup (bootstrap_node.js:139:9)
    at bootstrap_node.js:533:3

事情是我不想改变目录。有可能吗?为什么会这样?

2 个答案:

答案 0 :(得分:0)

按照惯例,NODE_ENV是您正在运行的环境类型,例如开发或生产或测试。它只对检查它并相应地设置选项的模块很重要,例如许多记录器在开发过程中默认更加冗长。

不确定为什么你不会只改变目录,但是你对server.js的调用可以是绝对路径或相对路径。如果文件位于/ home / user / project文件夹中,您可以(从/ home / User)调用

node ./project/socket.js

答案 1 :(得分:0)

经过一番研究后,我找到了this

根据该网站,我必须这样做

export NODE_CONFIG_DIR=/home/user/Public/project/config

并运行此

node ./Public/smart-backwall-server/socket.js