情報アイランド

「情報を制する者は世界を制す」をモットーに様々な情報を提供することを目指すブログです。現在はプログラミング関連情報が多めですが、投資関連情報も取り扱っていきたいです。

NPMを使用する(3)パッケージのインストール

パッケージのインストール

パッケージをインストールするにはnpm installコマンドを実行します。

第1引数にパッケージのフォルダのパスか圧縮されたパッケージのアドレスかパスかパッケージのGitリポジトリのアドレスを指定します。

あるいは、NPMレジストリで公開されているパッケージをインストールするにはパッケージ名を指定します。

たとえば、underscoreという名称のパッケージをインストールするには下のようにします。

C:\work\node>npm install underscore
pack@1.0.0 C:\work\node
`-- underscore@1.8.3  extraneous

npm WARN pack@1.0.0 No repository field.

パッケージは現在のフォルダのnode_modulesフォルダにインストールされます。

C:\work\node>dir node_modules
 Volume in drive C is TI31035600A
 Volume Serial Number is 1CBD-3C48

 Directory of C:\work\node\node_modules

2016/05/27  09:50    <DIR>          .
2016/05/27  09:50    <DIR>          ..
2016/05/27  09:50    <DIR>          underscore
               0 File(s)              0 bytes
               3 Dir(s)   3,099,807,744 bytes free

C:\work\node>dir node_modules\underscore
 Volume in drive C is TI31035600A
 Volume Serial Number is 1CBD-3C48

 Directory of C:\work\node\node_modules\underscore

2016/05/27  09:50    <DIR>          .
2016/05/27  09:50    <DIR>          ..
2016/05/27  09:50             1,117 LICENSE
2016/05/27  09:50             2,441 package.json
2016/05/27  09:50             1,225 README.md
2016/05/27  09:50            16,449 underscore-min.js
2016/05/27  09:50            27,589 underscore-min.map
2016/05/27  09:50            52,919 underscore.js
               6 File(s)        101,740 bytes
               2 Dir(s)   3,099,807,744 bytes free

パッケージ名のみを指定すると最新のバージョンがインストールされます。ただし、インストールしようとしているパッケージが現在のフォルダのpackage.jsonで依存パッケージとして指定されている場合には指定のバージョン表記を満たす最新のバージョンがインストールされます。

バージョンを指定してパッケージをインストールするにはunderscore@1.0.5underscore@"^1.0.0"のようにパッケージ名の後に@とバージョン表記を付加します。この場合、バージョン表記を満たす最新のバージョンがインストールされます。

パッケージをインストールするのと同時にパッケージを依存パッケージとして現在のフォルダのpackage.jsondependenciesプロパティに追加するには-Sオプションか--saveオプションを付加します。また、devDependenciesプロパティに追加するには-Dオプションか--save-devオプションを付加し、optionalDependenciesプロパティに追加するには-Oオプションか--save-optionalオプションを付加します。

C:\work\node>npm install underscore@1.8.0 --save
pack@1.0.0 C:\work\node
`-- underscore@1.8.0

npm WARN pack@1.0.0 No repository field.

C:\work\node>type package.json
{
  "name": "pack",
  "version": "1.0.0",
  "description": "sample",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "pizyumi",
  "license": "ISC",
  "dependencies": {
    "underscore": "^1.8.0"
  }
}

なお、デフォルトではdependenciesプロパティやdevDependenciesプロパティやoptionalDependenciesプロパティに追加されるパッケージのバージョン表記には^が付加されます。インストールしたバージョンそのものを指定する場合には-Eオプションか--save-exactオプションを付加します。

逆に、現在のフォルダのpackage.jsondependenciesプロパティやdevDependenciesプロパティやoptionalDependenciesプロパティに指定されている依存パッケージの中でまだインストールされていないものを全てインストールするには何も指定しないでnpm installコマンドを実行します。

ただし、optionalDependenciesプロパティに指定されている依存パッケージをインストールしない場合には--no-optionalオプションを付加します。

また、dependenciesプロパティに指定されている依存パッケージのみをインストールする場合には--productionオプションを付加します。

通常は既にインストールされているパッケージが再度インストールされることはありませんが、既にインストールされているパッケージも含めて全ての依存パッケージをインストールするには-fオプションか--forceオプションを付加します。

C:\work\node>npm install
npm WARN pack@1.0.0 No repository field.

パッケージの更新

インストールしたパッケージを更新するにはnpm updateコマンドを実行します。

第1引数にパッケージ名を指定します。

また、現在のフォルダのpackage.jsondependenciesプロパティやdevDependenciesプロパティに指定されている全ての依存パッケージを更新するには何も指定しないでnpm updateコマンドを実行します。ただし、devDependenciesプロパティに指定されている依存パッケージも更新する場合には--devオプションを付加します。

C:\work\node>npm update
pack@1.0.0 C:\work\node
`-- underscore@1.8.3

npm WARN pack@1.0.0 No repository field.

パッケージを更新するのと同時に現在のフォルダのpackage.jsondependenciesプロパティも更新するには-Sオプションか--saveオプションを付加します。

パッケージのアンインストール

パッケージをアンインストールするにはnpm uninstallコマンドを実行します。

npm rmコマンド、npm rコマンド、npm unコマンド、npm unlinkコマンドもnpm uninstallコマンドと同じです。

第1引数にパッケージ名を指定します。

C:\work\node>npm uninstall underscore
- underscore@1.8.3 node_modules\underscore
npm WARN pack@1.0.0 No repository field.

C:\work\node>dir node_modules
 Volume in drive C is TI31035600A
 Volume Serial Number is 1CBD-3C48

 Directory of C:\work\node\node_modules

2016/05/27  10:04    <DIR>          .
2016/05/27  10:04    <DIR>          ..
               0 File(s)              0 bytes
               2 Dir(s)   3,099,324,416 bytes free

パッケージをアンインストールするのと同時にパッケージを現在のフォルダのpackage.jsondependenciesプロパティから削除するには-Sオプションか--saveオプションを付加します。また、devDependenciesプロパティから削除するには-Dオプションか--save-devオプションを付加し、optionalDependenciesプロパティから削除するには-Oオプションか--save-optionalオプションを付加します。

C:\work\node>npm uninstall underscore --save
npm WARN pack@1.0.0 No repository field.

C:\work\node>type package.json
{
  "name": "pack",
  "version": "1.0.0",
  "description": "sample",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "pizyumi",
  "license": "ISC",
  "dependencies": {}
}

グローバルパッケージ

パッケージをグローバルパッケージとしてインストールしたり、更新したり、アンインストールする場合には-gオプションか--globalオプションを付加します。

関連

pizyumi
プログラミング歴19年のベテランプログラマー。業務システム全般何でも作れます。現在はWeb系の技術を勉強中。
スポンサーリンク

-Node.js, npm