目次
npm initの使い方とは?
今回は、npm initの使い方について説明します。npmとは、Node Package Managerの略で、パッケージ管理ツールです。パッケージをインストールする際に、依存関係のあるパッケージもまとめてインストールしてくれる便利なツールです。
npm initコマンドは、npmで管理するプロジェクトの初期化コマンドです。実行すると、package.jsonファイルが生成されます。基本的な使い方から、init後によく使うコマンドについて紹介します。
npmのバージョンは以下とします。
1
2
3
|
~$ npm -v
6.13.6
~$
|
npm initの使い方に興味のある方はぜひご覧ください。
基本的な使い方
npm initコマンドの基本的な使い方を紹介します。npm initコマンドを実行後、すべてEnterを押してみてください。
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
26
27
28
29
30
31
32
33
34
35
36
37
|
~$ npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help json` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
package name: (ubuntu)
version: (1.0.0)
description:
entry point: (index.js)
test command:
git repository:
keywords:
author:
license: (ISC)
About to write to /home/ubuntu/package.json:
{
"name”ubuntu",
"version”1.0.0",
"description”,
"main”index.js",
"scripts": {
"test”echo \"Error: no test specified\" && exit 1"
},
"author”,
"license”ISC"
}
Is this OK? (yes)
~$
|
実行すると、カレントディレクトリにpackage.jsonファイルが生成されます。中身は以下のようになっています。
1
2
3
4
5
6
7
8
9
10
11
|
{
"name”ubuntu",
"version”1.0.0",
"description”,
"main”index.js",
"scripts": {
"test”echo \"Error: no test specified\" && exit 1"
},
"author”,
"license”ISC"
}
|
全てEnterを入力しましたが、入力項目について説明します。
・package name: パッケージ名
・version: パッケージバージョン
・description: パッケージの説明
・entry point: プログラムへの主要なエントリポイント
・test command: テスト用のスクリプト
・git repository: gitリポジトリのURL
・keywords: パッケージ公開時のための検索キーワード
・author:著者
・license: パッケージのライセンス
yオプション
npm initコマンドのyオプションについて紹介します。
改めてinitするので、package.jsonを削除しておいてください。
1
|
~$ rm package.json
|
先ほどは、全てEnterを入力しました。全てEnterを入力するのが面倒な場合、-yオプションを付けてnpm initを実行すると、全てEnterを入力した場合と同じになります。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
~$ npm -y init
Wrote to /home/ubuntu/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"
}
~$
|
カレントディレクトリにpackage.jsonファイルが生成されていることが分かります。
install
npm initで初期化した後は、必要なパッケージをインストールします。
以下の書式でパッケージをインストールします。
1
|
npm install パッケージ名
|
ここでは、jqueryをインストールしてみましょう。
1
2
3
4
5
6
7
8
9
10
|
~$ npm install jquery
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN ubuntu@1.0.0 No description
npm WARN ubuntu@1.0.0 No repository field.
+ jquery@3.5.1
added 1 package from 1 contributor and audited 1 package in 0.908s
found 0 vulnerabilities
~$
|
node_modulesフォルダとpackage-lock.jsonが生成されます。
1
2
3
|
~$ ls
node_modules package.json package-lock.json
~$
|
インストールされたパッケージリストを確認してみます。jquery@3.5.1がインストールされていることが分かります。
1
2
3
|
~$ npm list
ubuntu@1.0.0 /home/ubuntu
└── jquery@3.5.1
|
package.jsonファイルを確認してみます。dependenciesにjqueryが登録されていることが分かります。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
{
"name”ubuntu",
"version”1.0.0",
"description”,
"main”index.js",
"scripts": {
"test”echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author”,
"license”ISC",
"dependencies": {
"jquery”^3.5.1"
}
}
|
run
タスクの実行方法を紹介します。npm runコマンドを実行すると、タスク一覧を表示します。
1
2
3
4
5
|
~$ npm run
Lifecycle scripts included in ubuntu:
test
echo "Error: no test specified" && exit 1
~$
|
scriptsの部分を以下のように編集してみます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
{
"name”ubuntu",
"version”1.0.0",
"description”,
"main”index.js",
"scripts": {
"start”echo START",
"stop”echo STOP",
"restart”echo RESTART"
},
"keywords": [],
"author”,
"license”ISC"
"dependencies": {
"jquery”^3.5.1"
}
}
|
引数指定で実行すると、記載したコマンドが実行されます。
1
2
3
4
5
6
7
|
~$ npm run start
> ubuntu@1.0.0 start /home/ubuntu
> echo START
START
~$
|
–silentオプションを付与すると、出力を最低限にすることができます。
1
2
3
|
~$ npm run start --silent
START
~$
|
まとめ
いかがでしたでしょうか。npm initの基本的な使い方から、init後によく使うコマンドについて紹介しました。npm initコマンドはnpmで管理するプロジェクトの初期化コマンドで、実行すると、package.jsonファイルが生成されるという流れが理解できたでしょうか。
ぜひご自身で実際にコマンドを書いてみて、理解を深めてください。
インフラエンジニア専門の転職サイト「FEnetインフラ」
FEnetインフラはサービス開始から10年以上『エンジニアの生涯価値の向上』をミッションに掲げ、多くのエンジニアの就業を支援してきました。
転職をお考えの方は気軽にご登録・ご相談ください。