我有一个Visual Studio 2017 [/ 2019] ASP.NET Core Web应用程序项目,在其中启用了docker build输出并发布目标支持。
该项目利用了一个nuget软件包,该软件包具有一些我要调试和解决的问题,方法是换出nuget软件包引用,而是引用用于创建nuget软件包的项目源的fork。
在下面的.csproj
文件摘录中,您可以看到我在哪里注释了nuget程序包引用,而正在使用项目引用引用生成该nuget程序包分发的dll的项目的分支。
<ItemGroup>
<!--<PackageReference Include="SomeNugetPackage" Version="1.0.0" />-->
<PackageReference Include="Microsoft.AspNetCore.App" />
<PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.1.2" PrivateAssets="All" />
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.1.1" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\someNugetPackage.fork\src\SomeNugetPackage\SomeNugetPackage.csproj" />
</ItemGroup>
当我使用此设置对项目进行f5调试时,一切都很好,它会构建并由docker asp.net核心容器实例托管,而不会出现任何问题。当我尝试发布[到默认的docker目标,看起来是我的个人docker hub注册表,然后从那里发布到Azure容器实例中]时,就会出现问题。
发布处理将生成一个对话框,指出
发布失败|发布遇到错误。 |构建失败。检查“输出”窗口以获取更多详细信息。 |诊断日志已写入以下位置:“%temp%\ tmp5712.tmp” |好
tmp文件似乎没有任何其他相关细节。可以在here和项目tmp5712.tmp文件here中找到该项目的Dockerfile。
构建输出窗口确实包含以下详细信息。
/usr/share/dotnet/sdk/2.1.502/Microsoft.Common.CurrentVersion.targets(1879,5):警告:引用的项目'../../someNugetPackage.fork/src/SomeNugetPackage/SomeNugetPackage .csproj'不存在。 [/src/AzWebApp1/AzWebApp1.csproj]
Startup.cs(9,7):错误CS0246:找不到类型或名称空间名称“(您是否缺少using指令或程序集引用?)[/ src / AzWebApp1 / AzWebApp1.csproj]
是否需要进行一些ASP.NET Core Web应用程序项目Dockerfile设置来处理引入项目引用的dll输出以进行发布生成过程,该过程在f5 localhost调试生成/重建过程中没有任何必要的特殊设置例?