LoginSignup
1
2

More than 5 years have passed since last update.

npmを使ってJSプロジェクトの管理

Posted at

npmを使ってJSのプロジェクトの管理

X番煎じの記事。
Node.jsを触り始めたのと同じぐらいのタイミングでnpmコマンドを使い始めたが、
今まで本格的に使おうと思ったことがなかったのもあり、
「npm search キーワード」と「npm install パッケージ名」以外使うことがなかった。
(-gを付ければ恒久、つけなければカレントぐらいの知識だった)

もちろん、よくQiitaの記事などで「npm install --save パッケージ名」を指定していたので
「--save」の存在は知ってたが、特に使わなくても困らなかったので、覚えようという気もなかった。
(個人でソース管理する分にはライブラリを入れたままでも困らないので)
が、GitHubのようなパブリックな環境で管理しようとすると、
さすがにそうもいかないので、JavaのMaven的なものを探してnpmに行き着いた。

概要

  1. プロジェクト作成
  2. パッケージ(ライブラリ)の追加
  3. プロジェクト取得後にやること

プロジェクト作成

npmでプロジェクトを管理する場合、最初にpackage.jsonを作成する必要がある。
package.jsonの作成にはinitを使用する。
以下、実行例である。

$ 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: (xxxxx) 
version: (1.0.0) 0.5.0
description: xxxxxxxxxx
entry point: (xxxxx.js) 
test command: 
git repository: (https://github.com/xxxxx/xxxxx.git) 
keywords: xxxxx xxxxx
author: xxxxx
license: (ISC) MIT
About to write to /home/alisha/work/tmp/20181213/gql2doc/package.json:

{
  "name": "xxxxx",
  "version": "0.5.0",
  "description": "xxxxxxxxxxx",
  "main": "xxxxxxxxxxxx",
  "dependencies": {
    "graphql": "^14.0.2",
    "isomorphic-fetch": "^2.2.1",
    "meow": "^5.0.0"
  },
  "devDependencies": {},
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/xxxxx/xxxxx.git"
  },
  "keywords": [
    "graphql",
    "gql",
    "html"
  ],
  "author": "XXXXXXXXXXXXXX",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/xxxxx/xxxxx/issues"
  },
  "homepage": "https://github.com/xxxxx/xxxxx#readme"
}


Is this ok? (yes) yes

GitのようなVCSで管理する場合、package.jsonをリポジトリに追加する必要がある。

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

プロジェクトにパッケージ(依存ライブラリ)を追加する場合、
「--save」のオプションを指定することでパッケージを取得した上で、
package.jsonに依存ライブラリが追記される。

$ npm install --save 依存ライブラリ

上記のコマンドを実行し、package.jsonを保持しておけば、
「node_modules/」を直接保存する必要はなくなる。

プロジェクト取得後にやること

git cloneなどでソース取得後、
以下のようにnpm installを実行することで、
依存ライブラリをローカルにインストールできる。

$ npm install

おまけ

開発時にだけ使用するライブラリを記述する場合は以下のように「--save-dev」を指定する。

$ npm install --save-dev 依存ライブラリ
1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2