【npm】パッケージのupdate方法を紹介します

【npm】パッケージのupdate方法
今回は、npmでパッケージをupdateする方法を紹介します。
update対象一覧の取得方法や、パッケージ指定update、バージョン指定update、一括updateの方法をコマンド付きで紹介します。
npmのバージョンは以下とします。
1
2
|
~$ npm -v
6.13.6
|
興味のある方はぜひご覧ください。
update対象一覧
update対象一覧の前に、インストール済みのパッケージ一覧を取得してみましょう。
インストール済みのパッケージ一覧を取得するには「npm list」コマンドを使用します。–depth=0を付与すると見やすいです。
1
2
3
4
5
6
7
8
9
10
11
12
|
~$ npm list --depth=0
ubuntu@1.0.0 /home/ubuntu
├── async@3.2.0
├── expres@0.0.5
├── hubot@3.3.2
├── jquery@2.2.1
├── less@4.1.0
├── pug@3.0.0
├── textlint@11.8.2
├── update@0.7.4
├── upgrade@1.1.0
└── webpack@5.21.2
|
パッケージとバージョンが一覧で表示されます。
このうち、update可能なパッケージ一覧を取得するには、「npm outdated」コマンドを実行します。
1
2
3
4
|
~$ npm outdated
Package Current Wanted Latest Location
jquery 2.2.1 2.2.4 3.5.1 ubuntu
less 4.1.0 4.1.1 4.1.1 ubuntu
|
この場合、2つのパッケージがupdate可能であることが分かります。
パッケージ指定update
パッケージを指定してupdateする方法を紹介します。update前は以下の状態とします。
1
2
3
4
|
~$ npm outdated
Package Current Wanted Latest Location
jquery 2.2.1 2.2.4 3.5.1 ubuntu
less 4.1.0 4.1.1 4.1.1 ubuntu
|
パッケージを指定してupdateするには、「npm update パッケージ名」とします。
1
|
~$ npm update less
|
update後に、npm outdatedコマンドを実行してみます。updateしたパッケージが表示されなくなりました。
1
2
3
|
~$ npm outdated
Package Current Wanted Latest Location
jquery 2.2.1 2.2.4 3.5.1 ubuntu
|
バージョン指定update
パッケージおよびバージョンを指定してupdateする方法を紹介します。update前は以下の状態とします。
1
2
3
|
~$ npm outdated
Package Current Wanted Latest Location
jquery 2.2.1 2.2.4 3.5.1 ubuntu
|
パッケージおよびバージョンを指定してupdateするには「npm install パッケージ名@バージョン」とします。@バージョンを省略すれば最新バージョンになります。
1
|
~$ npm install jquery@2.2.4
|
update後に、npm outdatedコマンドを実行してみます。最新化はしていないので、npm outdatedで表示されます。
1
2
3
|
~$ npm outdated
Package Current Wanted Latest Location
jquery 2.2.4 2.2.4 3.5.1 ubuntu
|
一括update
これまでは、個別パッケージをupdateする方法を紹介しました。ここでは、update可能なパッケージを一括updateする方法を紹介します。update前は以下の状態とします。
1
2
3
4
|
~$ npm outdated
Package Current Wanted Latest Location
jquery 2.2.1 2.2.4 3.5.1 ubuntu
less 4.1.0 4.1.1 4.1.1 ubuntu
|
package.jsonは以下の状態です。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
~$ cat package.json
{
"name”ubuntu",
"version”1.0.0",
"description”,
"main”index.js",
"scripts": {
"test”echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author”,
"license”ISC",
"dependencies": {
"async”^3.2.0",
"expres”0.0.5",
"hubot”^3.3.2",
"jquery”^2.2.1",
"less”^4.1.0",
"pug”^3.0.0",
"textlint”^11.8.2",
"update”^0.7.4",
"upgrade”^1.1.0",
"webpack”^5.21.2"
}
}
|
一括更新のために、npm updateコマンドを実行します。
1
|
~$ npm update
|
npm updateコマンドでは、メジャーバージョンのupdateができません。package.jsonを確認してみます。jqueryが最新化されていません。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
~$ cat package.json
{
"name”ubuntu",
"version”1.0.0",
"description”,
"main”index.js",
"scripts": {
"test”echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author”,
"license”ISC",
"dependencies": {
"async”^3.2.0",
"expres”0.0.5",
"hubot”^3.3.2",
"jquery”^2.2.4",
"less”^4.1.1",
"pug”^3.0.0",
"textlint”^11.8.2",
"update”^0.7.4",
"upgrade”^1.1.0",
"webpack”^5.21.2"
}
}
|
npm outdatedコマンドを実行してみます。メジャーバージョンアップされていないので、jqueryが表示されます。
1
2
3
|
~$ npm outdated
Package Current Wanted Latest Location
jquery 2.2.4 2.2.4 3.5.1 ubuntu
|
これを回避して一括更新するためには、npm-check-updatesをインストールします。
1
|
~$ npm install -g npm-check-updates
|
次に、ncuコマンドを実行します。「npm outdated」コマンドに相当します。
1
2
3
4
5
6
7
|
~$ ncu
Checking /home/ubuntu/package.json
[====================] 10/10 100%
jquery ^2.2.4 → ^3.5.1
Run ncu -u to upgrade package.json
|
次に「ncu -u」コマンドを実行してpackage.jsonを更新します。
1
2
3
4
5
6
7
|
~$ ncu -u
Upgrading /home/ubuntu/package.json
[====================] 10/10 100%
jquery ^2.2.4 → ^3.5.1
Run npm install to install new versions.
|
package.jsonの内容を確認してみます。jqueryが最新化されています。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
~$ cat package.json
{
"name”ubuntu",
"version”1.0.0",
"description”,
"main”index.js",
"scripts": {
"test”echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author”,
"license”ISC",
"dependencies": {
"async”^3.2.0",
"expres”0.0.5",
"hubot”^3.3.2",
"jquery”^3.5.1",
"less”^4.1.1",
"pug”^3.0.0",
"textlint”^11.8.2",
"update”^0.7.4",
"upgrade”^1.1.0",
"webpack”^5.21.2"
}
}
|
この時点では、パッケージは更新されていません。
1
2
3
|
~$ npm list | grep jquery
├── jquery@2.2.4 invalid
npm ERR! invalid: jquery@2.2.4 /home/ubuntu/node_modules/jquery
|
npm updateコマンドを実行します。これでパッケージが更新されます。
1
|
~$ npm update
|
npm outdatedコマンドでupdate可能なパッケージを確認します。
1
2
|
~$ npm outdated
~$
|
何も出力されないので、インストール済みパッケージが最新化されたことが分かります。
まとめ
いかがでしたでしょうか。npmでパッケージをupdateする方法を紹介しました。
update対象一覧の取得方法や、パッケージ指定update、バージョン指定update、一括updateの方法をコマンド付きで紹介しました。
ぜひご自身でコマンドを書いて、理解を深めてください。
ネプラス株式会社はサービス開始から10年以上
『エンジニアの生涯価値の向上』をミッションに掲げ、
多くのインフラエンジニア・ネットワークエンジニアの就業を支援してきました。
ネプラス株式会社はこんな会社です
秋葉原オフィスにはネプラス株式会社をはじめグループのIT企業が集結!
数多くのエンジニアが集まります。

-
インフラ業界に特化
ネットワーク・サーバー・データベース等、ITインフラ業界に特化。Cisco Systemsプレミアパートナーをはじめ各種ベンダーのパートナー企業です。
業界を知り尽くしているからこそ大手の取引先企業、経験豊富なエンジニアに選ばれています。
-
正社員なのにフリーランスのような働き方
正社員の方でも希望を聞いたうえでプロジェクトをアサインさせていただいており、フリーランスのような働き方が可能。帰社日もありません。
プロジェクト終了後もすぐに次の案件をご紹介させていただきますのでご安心ください。
-
大手直取引の高額案件
案件のほとんどが大手SIerやエンドユーザーからの直取引のためエンジニアの皆様へに高く還元できています。
Ciscoをはじめ、Juniper、Azure、Linux、AWS等インフラに特化した常時300件以上の案件があります。
-
スキルアップ支援
不要なコストを削減し、その分エンジニアの方へのスキルアップ支援(ネットワーク機器貸出、合格時の受験費用支給など)や給与で還元しています。
受験費用例)CCNP,CCIE:6-20万円、JNCIS:3-4万円、AWS:1-3万円など
※業務に関連する一定の資格のみ。各種条件がありますので詳しくは担当者へにお尋ねください。
-
現給与を保証します!※
前職の給与保証しており、昨年度は100%の方が給与アップを実現。収入面の不安がある方でも安心して入社していただけます。
※適用にはインフラエンジニアの業務経験1年以上、等一定の条件がございます。
-
インセンティブ制度
ネットワーク機器の販売・レンタル事業等、売上に貢献いただいた方にはインセンティブをお支払いしています。
取引先企業とエンジニア側、双方にメリットがあり大変好評をいただいています。
-
社会保険・福利厚生
社員の方は、社会保険を完備。健康保険は業界内で最も評価の高い「関東ITソフトウェア健康保険組合」です。
さらに様々なサービスをお得に利用できるベネフィットステーションにも加入いただきます。
-
東証プライム上場企業グループ
ネプラスは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。
安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。
ネプラス株式会社に興味を持った方へ
ネプラス株式会社では、インフラエンジニアを募集しています。
年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
オンライン面接も随時受付中。ぜひお気軽にご応募ください。

