【问题标题】:InvalidOperationException: The NPM script 'start' exited without indicating that the create-react-app server was listening for requestsInvalidOperationException:NPM 脚本“启动”退出,但未指示 create-react-app 服务器正在侦听请求
【发布时间】:2020-04-13 15:16:14
【问题描述】:

我正在构建一个 .net Core + React 应用程序,并将 Azure DevOps Pipelines 用于 CICD 流程。 该应用程序在本地运行并调试这两种配置。我有一个 IIS 服务器在我自己的虚拟机中运行。当我尝试使用 Azure Pipelines 部署它时,它会在下面显示错误消息。在它工作得非常好之前,但突然之间它向我显示了那个错误。谁能帮帮我?

Please look into the error message

【问题讨论】:

  • 嗨@bispul您是否检查了系统变量下的路径环境变量,如下面的答案所述。现在怎么样了?

标签: reactjs asp.net-core azure-devops azure-pipelines azure-pipelines-build-task


【解决方案1】:

我在 Azure 应用服务上将 ASPNETCORE_ENVIRONMENT 设置为 Development 时看到此错误。我怀疑这是由 React 模板 Startup.cs 中的以下 if 语句引起的:

        app.UseSpa(spa =>
        {
            spa.Options.SourcePath = "ClientApp";

            if (env.IsDevelopment()) 
            {
                spa.UseReactDevelopmentServer(npmScript: "start");
            }
        });

我认为我们不需要在 Azure 中启动 React Development 服务器。

我的解决方案是注释掉 Startup.cs 中的 if 语句,或者将 ASPNETCORE_ENVIRONMENT 设置更改为 Development 以外的其他设置。

【讨论】:

    【解决方案2】:

    错误输出是“npm”,无法识别为内部或外部命令。

    屏幕截图中的上述错误表示在系统路径中找不到 npm 命令文件。这可能是因为在部署应用程序时,Azure 代理使用构建服务帐户登录到您的 VM,并且 npm 命令文件不在构建服务帐户的环境变量路径中。

    您可以登录您的虚拟机并检查 npm 命令文件是否在 系统变量(不是用户变量)下的路径环境变量中,以便所有用户都可以访问它。如果没有,只需将;C:\Program Files\nodejs\(您的 nodejs 安装目录的路径)添加到路径环境变量中。

    系统->高级系统设置-->环境变量--->系统变量

    如果问题仍然存在,您可以尝试升级/降级安装在 VM 上的 node.js。对于故障排除,您可以检查您的虚拟机最近是否有任何更改。

    希望以上有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-10
      • 2020-12-23
      • 2022-11-16
      • 1970-01-01
      • 2019-03-14
      • 2021-08-29
      • 1970-01-01
      相关资源
      最近更新 更多