首页 > 解决方案 > 在 Docker 容器中构建 dotnet 应用程序时,找不到为 Main 方法指定的“xxx.Program”

问题描述

在 docker 容器中构建 dotnet 核心应用程序时遇到问题。我正在使用 dotnet 核心 2.2。

该项目的设置是:输出:控制台应用程序启动项目:Web.Project

在容器内运行以下命令时:

RUN dotnet build "Web.csproj" -c Release -o /app

我收到以下错误:

Could not find 'Web.Program' specified for Main method [/src/Web/Web.csproj]

如果项目只是一个程序集(dll),一切正常,但我无法运行网络应用程序。

有任何想法吗?

标签: docker.net-core

解决方案


我的问题的解决方案是从我的 csproj 文件中删除以下行:

<OutputType>EXE</OutputType>

似乎 Visual Studio 2107 在更改输出类型时添加了该标签。一旦我删除了它,我就能够在 Docker 容器和 Windows 中构建和发布。


推荐阅读