Ubuntu试图运行.js文件得到错误;

时间:2016-04-18 19:09:00

标签: javascript node.js ubuntu ssh vps

所以我移动到了.js文件所在的目录,我用node filename.js打开了它,得到了nodejs和ubuntu VPS上安装的所有东西,我得到错误:

throw err;
    ^

Error: Cannot find module 'is-property'
    at Function.Module._resolveFilename (module.js:325:15)
    at Function.Module._load (module.js:276:25)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/var/www/bot/node_modules/steamcommunity-mobile-confirmations/node_modules/request/node_modules/har-validator/node_modules/is-my-json-valid/node_modules/generate-object-property/index.js:1:80)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)

有什么问题?或者我试图运行这个文件完全错误?

2 个答案:

答案 0 :(得分:2)

看起来您需要安装依赖项。 尝试在终端中运行以下命令

npm install is-property --save

答案 1 :(得分:1)

如果您尝试使用package.json文件运行脚本,则应该定义所需的所有依赖项。剩下的就是在项目目录中运行npm install

如果没有package.json定义依赖项,则您需要安装每个缺少的依赖项。正如您所发现的那样,如果它们丢失,它会丢失一个丢失的模块错误。如果有多个缺少的模块,您可能会多次遇到此问题。要解决这个问题,请深入了解代码,然后查找不引用本地路径的require('package-name')语句。 (例如require('./package')是本地文件,而require('package')将查找npm安装的模块。)或者,您可以继续尝试运行它,并手动安装每个缺少的依赖项,直到它停止吐出错误。

我强烈建议您创建一个package.json,如果还不存在的话。您可以使用npm init,并且应自动添加任何已安装的软件包。然后,您可以使用npm install package-name --savenpm install package-name -S向其中保存其他包。这样,如果您在另一台计算机/另一个目录中使用相同的代码,则不必复制node_modules文件夹,因为您可以指定所需的软件包/版本并使用单npm install

此外,您可能希望了解package.json文件与节点相关的内容。

NPM Docs on package.json