質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
npm

npmは、Node Packaged Modulesの略。Node.jsのライブラリ・パッケージを管理できるツールです。様々なモジュールを簡単にインストールでき、自分でモジュールを作成し公開する際にも使用できます。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Grunt

Gruntは、JavaScriptで記述されたタスクを実行するアプリケーションです。タスクランナーと呼ばれる自動化ツールで、様々な作業を自動化して開発の効率を高めます。コマンド実行やファイル保存などの際の自動実行が可能です。

Q&A

解決済

2回答

4841閲覧

npm install でプラグインをインストールするといくつか他のプラグインがインストールされる

takashi006

総合スコア13

npm

npmは、Node Packaged Modulesの略。Node.jsのライブラリ・パッケージを管理できるツールです。様々なモジュールを簡単にインストールでき、自分でモジュールを作成し公開する際にも使用できます。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Grunt

Gruntは、JavaScriptで記述されたタスクを実行するアプリケーションです。タスクランナーと呼ばれる自動化ツールで、様々な作業を自動化して開発の効率を高めます。コマンド実行やファイル保存などの際の自動実行が可能です。

0グッド

0クリップ

投稿2016/09/18 13:37

###gruntをインストールした際に
npm install --save-dev grunt
にてgruntをインストールしたのですが、node_modulesのフォルダ内を確認するとgrunt以外のフォルダが多数入ってしまいます。
gruntも含め下記のように多数入っております。
いらないものが入るのは避けたいのですが、初期設定が悪いのか、何が原因か分からないので教えていただきたいです。

abbrev
ansi-regex
ansi-styles
argparse
array-find-index
async
balanced-match
brace-expansion
builtin-modules
camelcase
camelcase-keys
chalk
coffee-script
colors
concat-map
currently-unhandled
dateformat
decamelize
error-ex
escape-string-regexp
esprima
eventemitter2
exit
find-up
findup-sync
fs.realpath
get-stdin
getobject
glob
graceful-fs
grunt
grunt-known-options
grunt-legacy-log
grunt-legacy-log-utils
grunt-legacy-util
has-ansi
hooker
hosted-git-info
iconv-lite
indent-string
inflight
inherits
is-arrayish
is-builtin-module
is-finite
is-utf8
isexe
js-yaml
load-json-file
lodash
loud-rejection
map-obj
meow
minimatch
minimist
nopt
normalize-package-data
number-is-nan
object-assign
once
parse-json
path-exists
path-is-absolute
path-type
pify
pinkie
pinkie-promise
read-pkg
read-pkg-up
redent
repeating
resolve
rimraf
semver
signal-exit
spdx-correct
spdx-expression-parse
spdx-license-ids
sprintf-js
strip-ansi
strip-bom
strip-indent
supports-color
trim-newlines
underscore.string
validate-npm-package-license
which
wrappy

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

... いらないものが入るのは避けたいのですが...

逆なのです。
npm install では、必要なものが自動的に入るようになっているのです。
パッケージを作る側では、そのパッケージが利用している他のパッケージの一覧(場合によってはバージョン)を指定しています。
参考: grunt のソースの一部 https://github.com/gruntjs/grunt/blob/master/package.json

ある程度の規模のパッケージでは、他のパッケージをいくつも利用します。
利用者がインストールするときに、そのパッケージが利用している他のパッケージも個々に指定してインストールしないといけないとすると大変な手間がかかります。またバージョンの差による動作の差が出たりしてしまいます。

yum, maven など、パッケージ管理ツールでは、
* インスールしたいパッケージが利用する他のパッケージも自動でインストルされる仕組み
が不可欠なものになっています。

投稿2016/09/18 21:51

katoy

総合スコア22324

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takashi006

2016/09/22 01:43

URLまで添付していただきありがとうございます!なるほど、githubで確認すると依存パッケージが確認できるのですね!!勉強になります。ありがとうございます!
guest

0

正常な動作です。それらはgruntが使用しているパッケージです。
それらが無いとgruntは動かなくなりますので、削除などもできません。

たとえば、
あなたがAというパッケージを利用したいとし、ABというパッケージを利用しているとします。
するとあなたがAをインストールしたとき、自動的にBもインストールされるって感じです。(依存関係の解決)

投稿2016/09/18 17:15

編集2016/09/18 17:19
syuilo

総合スコア393

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takashi006

2016/09/22 01:41

丁寧にありがとうございます!依存しているパッケージがこんなに多いとは・・・
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問