エンターテイメント!!

遊戯王好きのJavaエンジニアのブログ。バーニングソウルを会得する特訓中。

npxを使おうとしてハマった件について

きっかけ

npxって初めて知って、いろいろ調べたりして紆余曲折をまとめる。

環境

vscodeのバージョン情報より。

バージョン: 1.47.3 (system setup)
コミット: 91899dcef7b8110878ea59626991a18c8a6a1b3e
日付: 2020-07-23T13:12:49.994Z
Electron: 7.3.2
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Windows_NT x64 10.0.18362

npmのバージョンが見えないので、下記だった。

$ npm -v
6.14.5

npxとは

Node.jsに付属するパッケージマネージャー。
ローカルにインストールしたnpmパッケージを、npxコマンドだけで実行できる。

例えば、typescriptでtsconfigを作りたい場合、以下のようにできる。

npx tsc --init

今まで、インストールしたtypescriptのモジュールを指定してやっていることが多かったと思うが、それを簡単に行えるようになるのが利点だと思う。

事件は起きた。。。

いざ、npxでtsconfigやろうとしたら、bash: npx: command not foundが。。。
Node.jsに付属してくるんじゃないの??って疑問符ばかりついて、コマンドをうち間違えてないか、Node.jsがインストールされているか、何回も確認したが、問題なかった。

もう、問題は忘れて、Switchの電源をいれてポケモンをやり始めて、手を付けた日は終わってしまいましたとさ。。。

解決方法

Nodist でインストールした場合、どうやらnpxは含まれないらしい。。。
こういうところがあるから、windowsでの開発が敬遠されがちなのだろうって思ってしまう。

インストールは、下記の方法でOK

npm install npx -g

ローカルにインストール必要性を感じないので、グローバル環境に入れる。

そうすると、ちゃんと使えるようになる。
下記の方法で確認できる。

$ npx -v
10.2.2

参考サイト

Nodist を入れたら npx が使えなくなったので手動でインストール / Twin Turbo Computing

npm 5.2.0の新機能! 「npx」でローカルパッケージを手軽に実行しよう - Qiita

雑記

1日無駄に過ごしてしまったな。。。
やっと何かやる意欲が出たのに、やめるきっかけができてしまうと、簡単に辞めてしまうダメエンジニアでごめんなさい。。。