Openshift KeystoneJS NodeJS应用程序 - 缺少依赖性

时间:2016-10-31 14:41:33

标签: node.js openshift keystonejs

我尝试将我的KeystoneJS应用程序部署到Openshift NodeJS盒式磁带上运行得很好,并且我一直在运行这样的依赖性错误:

==> app-root/logs/nodejs.log-20161031064556 <==
    ^
Error: Cannot find module 'dotenv'
    at Function.Module._resolveFilename (module.js:472:15)
    at Function.Module._load (module.js:420:25)
    at Module.require (module.js:500:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/var/lib/openshift/5816407e89f5cfcee800001c/app-root/runtime/repo/app.js:3:1)
    at Module._compile (module.js:573:32)
    at Object.Module._extensions..js (module.js:582:10)
    at Module.load (module.js:490:32)
    at tryModuleLoad (module.js:449:12)
    at Function.Module._load (module.js:441:3)
module.js:474
    throw err;
^

当我尝试找到dotenv模块时,它出现在node_modules目录中:

ls -la node_modules/ | grep dotenv
drwx------.   3 xyz xyz  4096 31. říj 07.56 dotenv

我不断得到的另一个错误是:

SyntaxError: Unexpected token )
    at Object.exports.runInThisContext (vm.js:76:16)
    at Module._compile (module.js:545:28)
    at Object.Module._extensions..js (module.js:582:10)
    at Module.load (module.js:490:32)
    at tryModuleLoad (module.js:449:12)
    at Function.Module._load (module.js:441:3)
    at Module.require (module.js:500:17)
    at require (internal/module.js:20:19)
    at symbols (/var/lib/openshift/5816407e89f5cfcee800001c/app-root/runtime/repo/node_modules/slug/slug.js:6:16)
    at /var/lib/openshift/5816407e89f5cfcee800001c/app-root/runtime/repo/node_modules/slug/slug.js:201:5
/var/lib/openshift/5816407e89f5cfcee800001c/app-root/runtime/repo/node_modules/unicode/category/So.js:2
});

我的本​​地环境中也没有。 (但我认为当我解决第一个错误时,这个会消失)

我尝试使用以下方法重新安装应用程序:

rm -rf node_modules
npm cache clear
npm install
几次,但没有成功。

NodeJS的版本是

node --version
v7.0.0

非常感谢任何帮助。

希蒙

1 个答案:

答案 0 :(得分:0)

如果服务器上只有语法错误,那么您无法部署新版本。

另外,请检查preg_replace_callback package.json或自述文件中的模块名称。