gpt4 book ai didi

express - 用于生产缺失节点模块包的 Nrwl Nx 构建

转载 作者:行者123 更新时间:2023-12-04 11:47:27 26 4
gpt4 key购买 nike

我有一个 Nrwl Nx 存储库,其中包含不同的应用程序(angular、nodejs 和 express)和内部共享库。
该存储库是使用 nx cli 创建的我想为生产制造其中之一 express应用。

nx build:production myexpressapp

我得到的包非常好,如果我从它的构建位置( dist 文件夹)运行它(使用 pm2),它就会运行。
但是,如果我将其投入生产,则缺少节点模块并且应用程序无法启动。
如果我将 node_modules 文件夹复制到带有内置 dist 的文件夹之上,它也能正常工作。

但我非常喜欢:
  • 获得一个包含所有必需模块的大包?
  • 沿着我的主要捆绑包获得另一个“供应商”捆绑包,其中所有需要的模块都在那里?

  • 我尝试使用 "vendorChunk":true在我的生产构建选项中,但没有任何变化。

    有什么想法吗?

    最佳答案

    看着 angular.json (或 workspace.json),如果您的 builder@nrwl/node:build , 下 options , 设置 externalDependenciesnone ,像这样:

    {
    "projects": {
    "api": {
    "architect": {
    "build": {
    "builder": "@nrwl/node:build",
    "options": {
    "externalDependencies": "none"
    ...
    您可能会遇到以下错误:
    ERROR in ...
    Module not found: Error: Can't resolve 'some-modules' in ...
    继续安装它提示的东西,直到它停止。
    引用: Nrwl Nx Node Builder

    关于express - 用于生产缺失节点模块包的 Nrwl Nx 构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60772753/

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