【问题标题】:Nx CLI run many command is not working for multiple appsNx CLI run many command 不适用于多个应用程序
【发布时间】:2021-07-23 16:13:32
【问题描述】:

我曾尝试使用 Nx 来尝试使用 Monorepos。我一直面临通过nx run-many 命令为多个应用程序提供服务的问题。如果我做错了什么,谁能纠正我?

使用的命令:nx run-many --target=serve --all

我可以看到 Nx 控制台记录了所有可用的应用程序,但只运行了一个

>  NX  Running target serve for projects:
  - app1
  - app2
———————————————————————————————————————————————
> nx run app1:serve 

【问题讨论】:

    标签: monorepo nrwl-nx nrwl


    【解决方案1】:

    试试这个:

    nx run-many --parallel --target=serve --projects=frontend,backend 
    

    【讨论】:

    • 当我有多个nest.js 应用程序时,该命令应该可以工作,但是端口冲突。
    【解决方案2】:

    您可以通过编辑package.json更改服务端口

    "serve": {
          "executor": "@nrwl/web:dev-server",
          "options": {
            "buildTarget": "admin-web:build",
            "port": 4220,
            "hmr": true
          },
          "configurations": {
            "production": {
              "buildTarget": "admin-web:build:production",
              "hmr": false
            }
          }
        }
    

    之后你可以运行nx run-many

    nx run-many --parallel --target=serve --projects=frontend,backend 
    

    【讨论】:

      【解决方案3】:

      这是由于端口覆盖造成的,例如,如果您有多个前端应用程序,它们将在同一个端口上运行。 您可以在 project.json 文件中管理每个项目的配置,并且可以为每个项目处理不同的端口。

      示例:

      "serve": {
        "executor": "@nrwl/web:dev-server",
        "options": {
          "buildTarget": "react-todo:build",
          "hmr": true,
          "port": 3001
        },
        "configurations": {
          "production": {
            "buildTarget": "react-todo:build:production",
            "hmr": false
          }
        }
      },
      

      这是 (apps//project.json) 中的反应配置

      【讨论】:

        猜你喜欢
        • 2020-03-21
        • 1970-01-01
        • 2022-12-07
        • 2019-08-20
        • 2022-01-16
        • 2018-12-28
        • 1970-01-01
        • 1970-01-01
        • 2011-10-21
        相关资源
        最近更新 更多