Babel ver7 で babel-node の問題が起こった時の解決方法

公開:2020/11/01
更新:2020/11/01
4 min読了の目安(約3700字TECH技術記事

この記事での問題

$ babel-node
sh: 1: babel-node: not found

といったエラーが発生!

  • npm install --save-dev @babel-node
  • の様にインストールしたのに何故かbabel-nodeが使えない
  • Babel v6 だと babel-node を通常通りに使える

環境:

  • OS: Ubuntu 18.04

  • エディター: VS code 1.50.1

  • JS フレームワーク

    • node v12.4.0
    • npm 6.14.8
  • package.json dev dependencies

    • "@babel/core": "^7.12.3",
    • "@babel/node": "^7.12.1",
    • "@babel/preset-env": "^7.12.1",
    • "nodemon": "^2.0.6"
  • Root

    • src
      • index.js
    • .babelrc
    • package.json
    • package-lock.json
    • node_modules

投稿日 1 Nov 2020


先ずはこの通りにやってみた

世界一シンプルなサーバサイドnodeでES6の始め方


躓いた箇所

上記の通りに環境構築し

"scripts": { "start": "nodemon --exec babel-node src/index.js" }

下記をターミナルで実行した際に問題発生

$ npm start

> test@1.0.0 Root/test
> nodemon --exec babel-node src/index.js

[nodemon] 2.0.6
[nodemon] to restart at any time, enter rs `[nodemon] watching path(s): *.*` `[nodemon] watching extensions: js,mjs,json` `[nodemon] starting `babel-node src/index.js
sh: 1: babel-node: not found
[nodemon] failed to start process, "babel-node" exec not found

その後、30程の他の記事に指摘されている事を試しても解決せず
公式ドキュメントを読んでも未解決


解決方法

グローバルに @babel/cli をインストールしてみた

npm install -g @babel/cli

すると下記のフォルダに、それぞれの新規ファイルが出来、

package.json
../lib/node_modules/babel-node
_babel-node.js
../lib/node_modules/babel-cli/lib
babel-node.js
../lib/node_modules/babel-cli/lib
babel-node.js
../lib/node_modules/babel-cli/bin

ローカルで babel-node が使えるようになっていた


これが全ての人に当てはまるとは確認出来ないですが
もし、この問題に陥ったら試してみて下さい


資料集

試してみた記事達

  1. https://qiita.com/kaba/items/9e1347613a4bd63594b4
  2. https://it-blue-collar-dairy.com/babel_transpile_error/
  3. https://qiita.com/tathuhi10/items/c908f890939797e6bcf3
  4. https://python5.com/q/buwosxlt
  5. https://ocws.jp/blog/if-you-raise-the-babel-loader-to-v8-the-solution-is-when-you-get-an-error/
  6. https://nodachisoft.com/common/jp/article/jp000018/
  7. https://community.netlify.com/t/deployment-failure-babel-command-not-found/10501
  8. https://www.xspdf.com/resolution/51625550.html
  9. https://hackernoon.com/using-babel-7-with-node-7e401bc28b04
  10. https://www.creativebloq.com/how-to/get-started-with-babel-7
  11. https://github.com/babel
  12. https://github.com/babel/website/issues/642
  13. https://github.com/babel/babel/issues/6810
  14. https://github.com/babel/example-node-server
  15. https://github.com/babel/babel/tree/main/packages/babel-node
  16. https://github.com/babel/babel/issues/10708
  17. https://github.com/apache/incubator-superset/issues/6489
  18. https://github.com/babel/babel/issues/8229
  19. https://github.com/babel/babel/issues/11892
  20. https://github.com/rwieruch/minimal-node-application/issues/2
  21. https://github.com/babel/babel/issues/8229
  22. https://babeljs.io/docs/en/babel-node
  23. https://babeljs.io/docs/en/
  24. https://stackoverflow.com/questions/34421513/babel-command-not-found
  25. https://www.robinwieruch.de/minimal-node-js-babel-setup
  26. https://github.com/rwieruch/minimal-node-application
  27. https://medium.com/@abs4real16.ma/writing-es6-in-nodejs-using-babel-10731b8032fc
  28. https://medium.com/@therkverma/set-babel-and-nodemon-with-node-js-99c66077e629
    29.https://www.reddit.com/r/javascript/comments/3wp54r/just_installed_babelcli_but_its_not_working/
  29. https://stackoverflow.com/questions/55172872/setup-webstorm-node-js-nodemon-babel-node <-- この記事で which babel-node のファイルが無い事に気付く
  30. https://www.npmjs.com/package/@babel/node
  31. https://www.codementor.io/@michaelumanah/how-to-set-up-babel-7-and-nodemon-with-node-js-pbj7cietc
  32. https://stackoverflow.com/questions/42001054/babel-node-is-not-recognized-as-an-internal-or-external-command-operable-progra <--- この記事の2番目のアンサーを読んで試した時、使えるようになった