持续集成、dist文件夹和node_modules

7

我正在学习持续集成,处理过程的构建序列时遇到了一些问题。

实际上,我的一个应用程序在项目的根目录下有以下目录:

  • src
  • doc
  • dist
  • tests
  • node_modules

我的问题是:当我处于构建步骤(在测试过程之后构建最后一个产品)时,我是否应该将node_modules目录复制到dist文件夹中?这样,dist文件夹可以独立工作(包括缩小等等),因此我只需要在生产环境中部署这个文件夹即可。

如何仅移动“依赖”模块而不是“devDependencies”模块?


这是一个服务器端的 Node.js 应用程序还是一个客户端应用程序(仅使用 node_modules 作为依赖项)?我不确定对于服务器端的 Node.js 应用程序是否需要缩小文件体积... - Nitax
1个回答

3
当你在Node应用程序中使用require导入一个模块时,无需复制任何内容,因为Node会在当前目录中搜索node_modules,如果找不到依赖项,则会尝试在其父级中搜索,以此类推。
请查看这里Node如何寻找包:http://mycodesmells.com/post/node-basics-looking-for-package/ 如果您不想将开发依赖项安装到生产环境中,则只需安装非开发依赖项即可。
npm install --production

Source: https://docs.npmjs.com/cli/install


2
你可以在运行测试后进行生产环境修剪:npm prune --production - Razvan
4
没问题,如果我只想使用最少的文件来运行我的应用程序,比如只有dist文件夹怎么办?(当我的dist文件夹构建完成时,src文件夹就没用了) - Thomas thomas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接