Jan Nielsen
Jan Nielsen

Reputation: 11849

Heroku deploy error: "Cannot find name 'require'."

Deploying my Angular 2 Node-based application to Heroku triggered this error:

94% asset optimizationError in bail mode: [default] /tmp/build_47b0228d68fca7157f36b354e7868841/src/app/account/account-list.component.ts:13:12
remote:        Cannot find name 'require'.
remote:        
remote:        npm ERR! Linux 3.13.0-100-generic
remote:        npm ERR! argv "/tmp/build_47b0228d68fca7157f36b354e7868841/.heroku/node/bin/node" "/tmp/build_47b0228d68fca7157f36b354e7868841/.heroku/node/bin/npm" "install" "--unsafe-perm" "--userconfig" "/tmp/build_47b0228d68fca7157f36b354e7868841/.npmrc"
remote:        npm ERR! node v6.6.0
remote:        npm ERR! npm  v3.10.8
remote:        npm ERR! code ELIFECYCLE
remote:        npm ERR! [email protected] postinstall: `ng build -prod`
remote:        npm ERR! Exit status 1

Upvotes: 3

Views: 1729

Answers (1)

Jan Nielsen
Jan Nielsen

Reputation: 11849

Add @types/node as an application dependency:

npm install @types/node --save

To compile the application without errors, Heroku needs the Node types dependency; it's not enough to have it as a development dependency.

See typescript getting error TS2304: cannot find name ' require' for related information.

Upvotes: 7

Related Questions