【问题标题】:.NET Core 2.2 Publish fails for missing *.pdb and *.xml.NET Core 2.2 发布因缺少 *.pdb 和 *.xml 而失败
【发布时间】:2023-03-19 19:07:01
【问题描述】:

我正在尝试将我的项目发布到一个文件夹中,但我遇到了以前从未见过的错误。它抱怨无法复制 Microsoft 软件包的 *.pdb 和 *.xml 文件,因为它们不存在。

这里有一些示例。

无法复制文件"C:\Users\jvlahos\.nuget\packages\system.reactive.platformservices\3.1.1\lib\netcoreapp1.0\System.Reactive.PlatformServices.pdb" because it was not found.

这来自两个根位置。

C:\Users\jvlahos\.nuget\packages\

C:\Program Files\dotnet\sdk\NuGetFallbackFolder\

如何强制发布过程排除 *.pdb 和 *.xml 文件(运行应用程序不需要它们)或实际获取这些文件?

【问题讨论】:

    标签: .net-core visual-studio-2017


    【解决方案1】:

    经过一番调查,我终于找到了答案。我使用 dotnet new 从模板创建了项目,主项目的 *.csproj 文件底部是这个。

    <Target Name="_ResolvePublishNuGetPackagePdbsAndXml" AfterTargets="RunResolvePublishAssemblies">
        <ItemGroup>
          <ResolvedFileToPublish Include="@(ResolvedAssembliesToPublish->'%(RootDir)%(Directory)%(Filename).pdb')" RelativePath="$([System.IO.Path]::ChangeExtension(%(ResolvedAssembliesToPublish.DestinationSubPath), '.pdb'))" DestinationSubPath="$([System.IO.Path]::ChangeExtension(%(ResolvedAssembliesToPublish.DestinationSubPath), '.pdb'))" />
          <ResolvedFileToPublish Include="@(ResolvedAssembliesToPublish->'%(RootDir)%(Directory)%(Filename).xml')" RelativePath="$([System.IO.Path]::ChangeExtension(%(ResolvedAssembliesToPublish.DestinationSubPath), '.xml'))" DestinationSubPath="$([System.IO.Path]::ChangeExtension(%(ResolvedAssembliesToPublish.DestinationSubPath), '.xml'))" />
        </ItemGroup>
    </Target>
    

    不知道为什么它甚至是模板的一部分,但就是这样。

    【讨论】:

      猜你喜欢
      • 2015-09-27
      • 1970-01-01
      • 2019-11-09
      • 2017-05-14
      • 2019-03-29
      • 1970-01-01
      • 2021-01-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多