gpt4 book ai didi

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

转载 作者:IT老高 更新时间:2023-10-28 21:45:48 27 4
gpt4 key购买 nike

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

我想要什么

假设我有两个 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 目录中复制我的应用程序目录并将包安装到 another node_modules 目录中。

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

最佳答案

运行:

npm install

从您的应用程序目录中(即 package.json 所在的位置)将为您的应用程序安装依赖项,而不是将其安装为模块,as described here .这些将放置在相对于您的 package.json 文件的 ./node_modules 中(实际上它比这稍微复杂一些,因此请检查 the npm docs here )。

如果需要,您可以自由地将 node_modules 目录移动到应用程序的父目录,因为 node 的 'require' 机制可以理解这一点。但是,如果您想使用 install/update 更新应用的依赖项,npm 将不会看到重新定位的“node_modules”,而是会创建一个新的目录,再次相对于 package.json。

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

ln -s ../node_modules node_modules

关于deployment - 如何使用 npm 在当前目录中安装 package.json 依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8367031/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com