部署Node.js应用到CloudFoundry时遇rimraf未找到错误求助
CloudFoundry部署Node.js应用的rimraf错误解决及相关疑问解答
错误解决方法
你的问题核心是未将rimraf安装为本地项目依赖,CloudFoundry构建环境不会自动识别全局工具,也无权限支持全局安装操作,必须把rimraf加入本地依赖:
- 安装rimraf作为开发依赖:
npm install rimraf --save-dev - 修正package.json的build脚本,直接调用本地依赖的rimraf:
(npm执行脚本时会自动把"scripts": { "build": "rimraf dist && tsc" }node_modules/.bin加入环境变量,直接写rimraf就能调用本地安装的版本)
如果想保留自定义脚本的写法,也可以改成:
"scripts": { "rimraf": "rimraf", "build": "npm run rimraf dist && tsc" }
但直接在build脚本里写rimraf dist更简洁高效。
你之前遇到./node_modules/rimraf/bin.js: not found的错误,本质是还未安装rimraf,本地node_modules目录中不存在对应文件。
关于rimraf的疑问解答
rimraf模块的作用是什么?
rimraf是跨平台的文件/目录删除工具,功能等同于Unix系统的rm -rf命令,解决了Windows与Unix系统删除命令不统一的问题,能递归删除指定路径下的所有文件和目录,无需担心目录是否为空。rimraf
是否用于删除对应路径的文件?
是的,rimraf <PATH>可以删除指定路径的单个文件,也能删除整个目录(包括目录内所有嵌套内容),行为和rm -rf <PATH>完全一致,且支持跨平台使用。
内容的提问来源于stack exchange,提问作者Dawienchi
相关产品推荐
相关产品推荐

