Node.js 私人 linux 托管申请
Node.js application on private linux hosting
我有一个专用的 linux 主机,上面有 Red Hat OS 运行ning。
我按照 this link 安装了 Node.js (10.4.0) 和 npm。我还安装了 git 并克隆了我的 git 存储库。我面临 3 个问题
问题 1
如果我在根文件夹上执行 node -v 它会给我 v0.11.9,如果我在根文件夹上执行 npm -v它给了我 1.3.15
但是如果我做 ~/nodejs/bin/node -v 它给出正确的版本 v10.4.0 如果我做 ~/nodejs/bin/npm -v 它给我一个错误:
/home/realedu7/nodejs/lib/node_modules/npm/bin/npm-cli.js:79
let notifier = require('update-notifier')({pkg})
^^^^^^^^
SyntaxError: Unexpected identifier
at exports.runInThisContext (vm.js:69:16)
at Module._compile (module.js:432:25)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:349:32)
at Function.Module._load (module.js:305:12)
at Function.Module.runMain (module.js:490:10)
at startup (node.js:123:16)
at node.js:1027:3
下面是显示问题的我的终端图像:
update-notifier 有什么问题?
问题2
当我尝试通过进入 realedu-app 项目文件夹并执行 运行 我的应用程序时
node app.js
它给我以下错误:
module.js:333
throw err;
^
Error: Cannot find module 'express'
at Function.Module._resolveFilename (module.js:331:15)
at Function.Module._load (module.js:273:25)
at Module.require (module.js:357:17)
at require (module.js:373:17)
at Object.<anonymous> (/home/realedu7/realedu-app/app.js:1:77)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:349:32)
at Function.Module._load (module.js:305:12)
at Function.Module.runMain (module.js:490:10)
很明显我的节点没有安装 express 模块。
我该如何解决这个问题?
我想推荐你使用 official documentation 安装和设置节点和 npm
问题 1:旧的 nmp 库和新的 npm 库之间存在冲突。你的新 npm 仍然指向旧版本的节点(不支持 let
),你需要设置你新的 nodejs 的路径来解决这个问题
问题2:你需要安装代码中使用的所有模块,如果你已经在package.json
中添加那么只需要运行npm install
否则你必须指定模块名称,如 npm install express
我有一个专用的 linux 主机,上面有 Red Hat OS 运行ning。
我按照 this link 安装了 Node.js (10.4.0) 和 npm。我还安装了 git 并克隆了我的 git 存储库。我面临 3 个问题
问题 1
如果我在根文件夹上执行 node -v 它会给我 v0.11.9,如果我在根文件夹上执行 npm -v它给了我 1.3.15
但是如果我做 ~/nodejs/bin/node -v 它给出正确的版本 v10.4.0 如果我做 ~/nodejs/bin/npm -v 它给我一个错误:
/home/realedu7/nodejs/lib/node_modules/npm/bin/npm-cli.js:79
let notifier = require('update-notifier')({pkg})
^^^^^^^^
SyntaxError: Unexpected identifier
at exports.runInThisContext (vm.js:69:16)
at Module._compile (module.js:432:25)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:349:32)
at Function.Module._load (module.js:305:12)
at Function.Module.runMain (module.js:490:10)
at startup (node.js:123:16)
at node.js:1027:3
下面是显示问题的我的终端图像:
update-notifier 有什么问题?
问题2
当我尝试通过进入 realedu-app 项目文件夹并执行 运行 我的应用程序时
node app.js
它给我以下错误:
module.js:333
throw err;
^
Error: Cannot find module 'express'
at Function.Module._resolveFilename (module.js:331:15)
at Function.Module._load (module.js:273:25)
at Module.require (module.js:357:17)
at require (module.js:373:17)
at Object.<anonymous> (/home/realedu7/realedu-app/app.js:1:77)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:349:32)
at Function.Module._load (module.js:305:12)
at Function.Module.runMain (module.js:490:10)
很明显我的节点没有安装 express 模块。 我该如何解决这个问题?
我想推荐你使用 official documentation 安装和设置节点和 npm
问题 1:旧的 nmp 库和新的 npm 库之间存在冲突。你的新 npm 仍然指向旧版本的节点(不支持 let
),你需要设置你新的 nodejs 的路径来解决这个问题
问题2:你需要安装代码中使用的所有模块,如果你已经在package.json
中添加那么只需要运行npm install
否则你必须指定模块名称,如 npm install express