npm install grunt --save-dev中的--save-dev是什么意思?

7uzetpgm  于 11个月前  发布在  其他
关注(0)|答案(8)|浏览(126)

我刚开始使用Grunt。它很难设置,我正在创建一个package.json文件。
在这个tutorial之后,它说有3种方法可以创建package.json文件。
第一个是做npm install grunt --save-dev
第一种方法是通过命令行(终端)导航到项目目录,使用npm安装grunt:sudo npm install grunt -save-dev。安装完成后,可以使用grunt-init task自动生成项目特定的package.json文件。

**但是--save-dev是什么意思?**我试着看了看,但结果是徒劳的。

qlvxas9a

qlvxas9a1#

--save-dev:包将出现在您的devicencies中。
根据npm install docs
如果有人打算下载并在他们的程序中使用您的模块,那么他们可能不想或不需要下载并构建您使用的外部测试或文档框架。
换句话说,当你运行npm install时,你的项目的开发工具包会被安装,但是你的应用所依赖的任何包的开发工具包都不会被安装;此外,其他依赖你的应用的应用也不需要安装你的开发工具包。只有在开发应用时才需要这些模块(例如grunt,mocha等)。
根据package.json文档

编辑:尝试可视化npm install的功能:

  • 您的项目
  • 依赖关系已安装
  • 依赖关系已安装
  • 依赖关系已安装
    • 未安装devDependency *
    • 未安装devDependency *
      *devDeputy已安装
  • 依赖关系已安装
    • 未安装devDependency *
oprakyz7

oprakyz72#

您可以在package.json文件中指示(至少)两种类型的包依赖关系:
1.那些需要 * 使用 * 你的模块的包在“dependencies”属性下列出。使用npm,你可以通过这种方式将这些依赖添加到你的package.json文件中:

npm install --save packageName

字符串
1.帮助 * 开发 * 你的模块所需的包在“devobundencies”属性下列出。这些包对于其他人使用模块来说不是必需的,但是如果他们想帮助开发模块,这些包将是必需的。使用npm,你可以通过以下方式将这些devobundencies添加到你的package.json文件中:

npm install --save-dev packageName

toe95027

toe950273#

要添加到Andreas的答案中,您可以使用以下命令仅安装依赖项:

npm install --production

字符串

uinbv5nw

uinbv5nw4#

当你使用参数“--保存”时,你的依赖项将进入package.json下面的#1。当你使用参数“--save-dev”时,你的依赖项将进入package.json下面的#2。

1.“dependencies”:这些包是你的应用在生产中所需要的。

2.“开发包”:这些包只用于开发和测试

vwhgwdsa

vwhgwdsa5#

npm的npm install <package-name> --savenpm install <package-name> --save-dev文档可以在这里找到:
https://docs.npmjs.com/getting-started/using-a-package.json#the-save-and-save-dev-install-flags
一个package.json文件声明了你正在开发的模块的元数据。前面提到的两个命令都会修改这个package.json文件。--save会声明安装的包(在本例中是grunt)作为你的模块的依赖; --save-dev会声明它作为你的模块开发的依赖。
问问你自己:安装的软件包是使用我的模块所必需的,还是只在开发模块时需要?

z3yyvxxp

z3yyvxxp6#

对我来说,第一个答案似乎有点令人困惑,所以为了使它简短和干净:
npm install <package_name>将指定的包保存到依赖项中默认情况下。此外,您可以使用一些额外的标志来控制它们保存的位置和方式:
npm install <package_name> --no-save防止保存到依赖项。
npm install <package_name> ---save-dev更新您包中的devDependencies。这些仅用于本地测试和开发。
你可以在in the dcu阅读更多

xesrikrc

xesrikrc7#

-保存

安装的包是核心依赖。

-save-dev

安装的包不是核心,而是开发依赖项。

tcbh2hod

tcbh2hod8#

仅在开发时使用

  • --save-dev意味着在生产环境中省略,仅在开发环境中使用(更小,可能更快)。

相关问题