我在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),则一切正常,但我无法运行Web应用程序。
有什么想法吗?
3条答案
按热度按时间7rfyedvj1#
我的问题的解决方案是从我的csproj文件中删除以下行:
看起来Visual Studio 2107在更改输出类型时添加了该标记。一旦我删除了该标记,我就能够在Docker容器和Windows中构建和发布了。
iyzzxitl2#
在我的例子中,存储库
/home/ubuntu/project
的文件夹与我构建dotnet build -C Release --runtime ubuntu.18.04-x64
的目标文件夹是相同的--output /home/ubuntu/project。解决办法是把它改成
dotnet build -C Release --runtime ubuntu.18.04-x64
--output /home/ubuntu/project_build 'cs7cruho3#
因为我更改了命名空间和解决方案的名称。