当前位置: 首页 > 面试题库 >

如何使用npm在当前目录中安装package.json依赖项

司空昊阳
2023-03-14
问题内容

我有一个Web应用程序: fooapp 。我有package.json根。我想将所有依赖项安装在特定的中node_modules directory。我该怎么做呢?

我想要的是

可以说我有两个widget依赖项。我想以这样的目录结构结束:

node_modules/
  widgetA
  widgetB
fooapp/
  package.js
  lib
  ..

我得到什么

当我跑步时,npm install fooapp/ 我得到以下信息:

node_modules/
  fooapp/
    node_modules/
      widgetA
      widgetB
    package.js
    lib/
    ..
fooapp/
  package.js
  lib/
  ..

npm在node_modules目录中复制我的应用程序目录,并将软件包安装在 另一个 node_modules目录中。

我了解这对于安装软件包很有意义。但是我不在require()其他地方使用Web应用程序,而是直接运行它。我正在寻找一种简单的方法来将我的依赖项安装到特定的node_modules目录中。


问题答案:

运行:

npm install

从您的应用程序目录中(即其中的package.json所在地)将安装依赖
你的应用程序,而不是将它安装为一个模块,如本文所述。它们将相对于package.json文件放置在./node_modules中(实际上比这稍微复杂一些,因此请在此处查看npm docs)。

您可以随意将node_modules目录移动到应用程序的父目录,因为node的’require’机制可以理解这一点。但是,如果您想通过安装/更新来更新应用程序的依赖关系,npm将不会看到已重定位的“
node_modules”,而是将创建一个新的目录,同样相对于package.json。

为防止这种情况,只需从您的应用程序目录创建一个指向重新定位的node_modules的符号链接:

ln -s ../node_modules node_modules


 类似资料:
  • 问题内容: 使用npm,我们可以使用option 在全局安装模块。我们如何在package.json文件中执行此操作? 假设这些是我在package.json文件中的依赖项 当我运行时,我只想全局安装,其余的应该本地安装。有这个选项吗? 问题答案: 新注: 您可能不需要或不需要这样做。您可能想要做的就是将那些用于构建/测试等命令依赖关系的类型放在package.json 的部分中。 每当您在pac

  • 问题内容: 我尝试从/ home / iwan / my-project目录中使用npm安装Express软件包: 奇怪的是npm不在当前目录(/ home / iwan / my-project / node_modules / express)中安装Express软件包,而是在/ home / iwan / node_modules / express中安装Express软件包。 我错过了什么

  • 问题内容: 我正在尝试通过npm安装github私有存储库,其中包括其他私有github存储库作为依赖项。 尝试了很多方法和帖子,但是都没有用。这是我在做什么: 在package.json中就像: 正确的方法是什么? 问题答案: 以下在我需要的所有情况下都可以正常工作:

  • 问题内容: 我是python的新手。最近,我有一个用python编写的项目,需要进行一些安装。我运行以下命令进行安装,但出现错误。 我在Google上搜索并找到了此链接,但我不太了解该帖子中的解决方案。 以下是我的requirements.txt文件: 有没有简单的方法来在此python项目中安装所有必需的依赖项? 编辑1 以下是的输出。 我已经安装了,但是pip命令仍然报告缺少此依赖项。 问题答