我正在使用msbuild的“ Visual Studio Build Tools 2017” 版本15.9.12建立旧式Web应用程序。此Web应用程序引用了一个NuGet程序包(使用了 PackageReference ),该程序包包含一个图像作为内容文件。
<ItemGroup>
<Content Include="Resources\Image.png" />
</ItemGroup>
这是软件包中生成的 Nuspec文件的一部分:
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
<metadata>
...
<dependencies>
...
</dependencies>
<frameworkAssemblies>
...
</frameworkAssemblies>
<contentFiles>
<files include="any/net471/Resources/Image.png" buildAction="Content" />
<files include="any/net471/Resources/Image.png" buildAction="Content" />
</contentFiles>
</metadata>
</package>
奇怪的是,图像在contentFiles
中出现了两次,但这不是问题。
构建失败,并显示以下错误:
C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ BuildTools \ MSBuild \ Microsoft \ VisualStudio \ v15.0 \ WebApplications \ Microsoft.WebApplication.targets(182,5): 错误MSB3021:无法复制文件 “ C:\ Users \ user.nuget \ packages \ mypackage \ 1.0.0-release-anycpu \ contentFiles \ any \ net471 \ Resources \ Image.png” 至 “ C:\ Builds \ Binaries \ _PublishedWebsites \ WebApplication.NET471 \ C:\ Users \ user.nuget \ packages \ mypackage \ 1.0.0-release-anycpu \ contentFiles \ any \ net471 \ Resources \ Image.png”。 不支持指定路径的格式。
请注意输出路径中的双c:\
。
当我从VisualStudio构建时,没有错误,但是文件不在输出目录中