Heroku - 节点部署时出现错误 运行 browserify
Heroku - error running browserify on Node deployment
我正在尝试将 Node 应用程序部署到 Heroku,但我在部署应用程序时成功地遇到问题 运行ning browserify。
当我在本地 运行ning 时,我使用 npm run bundle
浏览我的脚本,就像这样(来自 package.json
):
"bundle": "./node_modules/browserify/bin/cmd.js build/main.js -o public/scripts/bundle.js
which browserifies build/main.js
中的脚本并将其放入 public/scripts/bundle.js
.
为了部署到 Heroku,我添加了
"postinstall": "npm run bundle"
但是,当我部署时,出现以下错误:
Error: ENOENT: no such file or directory, open 'public/scripts/bundle.js.tmp-browserify-59309133185877094263'
嗯,没错,该文件不应该存在...但是。当我在本地 运行 npm run bundle
时,我确实看到该文件短暂地出现,但很快就被删除了,我得到了一个很好的更新 bundle.js
.
我通读了 Heroku 的文档,但我很生气...谁能解释一下如何解决这个问题?
作为参考,这里是我的package.json
:
的相关部分
"scripts": {
"bundle": "./node_modules/browserify/bin/cmd.js build/main.js -o public/scripts/bundle.js",
"postinstall": "npm run bundle"
},
"dependencies": {
"body-parser": "^1.17.1",
"browserify": "^14.1.0",
"ejs": "^2.5.6",
"express": "^4.15.2",
"jquery": "^3.2.1",
"path": "^0.12.7",
"superagent": "^3.5.2"
},
"devDependencies": {},
"engines": {
"node": "6.8.1",
"npm": "4.0.5"
}
已解决!我的全局 gitignore 配置中包含 bundle.js
。只需要把它拿出来,一切顺利!
我正在尝试将 Node 应用程序部署到 Heroku,但我在部署应用程序时成功地遇到问题 运行ning browserify。
当我在本地 运行ning 时,我使用 npm run bundle
浏览我的脚本,就像这样(来自 package.json
):
"bundle": "./node_modules/browserify/bin/cmd.js build/main.js -o public/scripts/bundle.js
which browserifies build/main.js
中的脚本并将其放入 public/scripts/bundle.js
.
为了部署到 Heroku,我添加了
"postinstall": "npm run bundle"
但是,当我部署时,出现以下错误:
Error: ENOENT: no such file or directory, open 'public/scripts/bundle.js.tmp-browserify-59309133185877094263'
嗯,没错,该文件不应该存在...但是。当我在本地 运行 npm run bundle
时,我确实看到该文件短暂地出现,但很快就被删除了,我得到了一个很好的更新 bundle.js
.
我通读了 Heroku 的文档,但我很生气...谁能解释一下如何解决这个问题?
作为参考,这里是我的package.json
:
"scripts": {
"bundle": "./node_modules/browserify/bin/cmd.js build/main.js -o public/scripts/bundle.js",
"postinstall": "npm run bundle"
},
"dependencies": {
"body-parser": "^1.17.1",
"browserify": "^14.1.0",
"ejs": "^2.5.6",
"express": "^4.15.2",
"jquery": "^3.2.1",
"path": "^0.12.7",
"superagent": "^3.5.2"
},
"devDependencies": {},
"engines": {
"node": "6.8.1",
"npm": "4.0.5"
}
已解决!我的全局 gitignore 配置中包含 bundle.js
。只需要把它拿出来,一切顺利!