【问题标题】:the file @(ReferenceCopyLocalPath->; WithMetadatavalue('ReferenceSourceTarget', 'ProjectReference')-> to be packed was not found on disk在磁盘上找不到要打包的文件@(ReferenceCopyLocalPath->; WithMetadatavalue('ReferenceSourceTarget', 'ProjectReference')->
【发布时间】:2020-07-28 19:45:34
【问题描述】:

我正在使用 dot net 标准中的 pack 命令创建一个 nuget 包,并生成以下错误:

the file @(ReferenceCopyLocalPath->; WithMetadatavalue('ReferenceSourceTarget',
 'ProjectReference')-> to be packed was not found on disk 

下面是我的csproj文件

<Project Sdk="Microsoft.NET.Sdk">    <PropertyGroup>
           <Version>1.4.3.8</Version>
           <PackageVersion>$(Version)</PackageVersion>
           <PackageOutputPath>..\build_output\packages</PackageOutputPath>
           <TargetFrameworks>net461;netstandard2.0;netcoreapp2.1;netcoreapp3.0;net462;net47;net471;net472;netstandard2.1</TargetFrameworks>
           <GeneratePackageOnBuild>false</GeneratePackageOnBuild>
           <AssemblyVersion>$(Version)</AssemblyVersion>
           <FileVersion>$(Version)</FileVersion>
           <IncludeSymbols>true</IncludeSymbols>
           <Authors>sn.synergy</Authors>
           <Company>Gyldendal™</Company>
           <PackageTags>Logger;Logging;Manager</PackageTags>
           <Copyright>© Gyldendal</Copyright>
           <PackageProjectUrl>https://gyldendaldenmark.visualstudio.com/Common
     Components/_git/logger</PackageProjectUrl>
           <RepositoryUrl>https://gyldendaldenmark.visualstudio.com/Common Components/_git/logger</RepositoryUrl>
           <RootNamespace>LoggingManager</RootNamespace>    </PropertyGroup>    <PropertyGroup
     Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
           <DefineConstants>DEBUG;TRACE</DefineConstants>
           <DebugType>full</DebugType>
           <DebugSymbols>true</DebugSymbols>    </PropertyGroup>    <ItemGroup>
           <None Include="NLog.config">
              <Pack>true</Pack>
           </None>    </ItemGroup>    <ItemGroup>
           <None Update="NLog.xsd">
              <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
           </None>    </ItemGroup>    <!--Common Package-->    <ItemGroup>
           <PackageReference Include="NLog" Version="4.6.7" />    </ItemGroup>    <!--Trageting .NET CORE (2.1, 3.0) && .NET STANDARD
     (2.0,2.1) -->    <ItemGroup
     Condition="$(TargetFramework.StartsWith('netcore')) OR
     $(TargetFramework.StartsWith('netstandard'))">
           <PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
           <PackageReference Include="Microsoft.AspNet.WebApi.Client" Version="5.2.7" />
           <!--<PackageReference Include="Microsoft.AspNet.WebApi.Core" Version="5.2.7" />-->
           <PackageReference Include="NLog.Extensions.Logging" Version="1.6.1" />
           <PackageReference Include="NLog.WindowsEventLog" Version="4.6.7" />
           <PackageReference Include="System.Diagnostics.EventLog" Version="4.6.0" />
           <PackageReference Include="System.Configuration.ConfigurationManager" Version="4.6.0" />
           <PackageReference Include="System.Data.SqlClient" Version="4.7.0" />
           <PackageReference Include="System.Linq" Version="4.3.0" />
           <PackageReference Include="Microsoft.Win32.Registry" Version="4.6.0" />    </ItemGroup>    <!--Targeting .NET FRAMEWORK
     (4.6.1 4.6.2)  -->    <ItemGroup Condition="'$(TargetFramework)' ==
     'net461' OR '$(TargetFramework)' == 'net462'">
           <PackageReference Include="Newtonsoft.Json" Version="10.0.3" />
           <PackageReference Include="Microsoft.AspNet.WebApi.Client" version="5.2.3" />
           <PackageReference Include="Microsoft.AspNet.WebApi.Core" version="5.2.3" />
           <PackageReference Include="NLog.Extensions.Logging" Version="1.5.4" />
           <PackageReference Include="NLog.WindowsEventLog" Version="4.6.7" />
           <PackageReference Include="System.Diagnostics.EventLog" Version="4.5.0" />
           <PackageReference Include="System.Configuration.ConfigurationManager" Version="4.5.0" />
           <PackageReference Include="System.Data.SqlClient" Version="4.6.1" />
           <PackageReference Include="System.Linq" Version="4.3.0" />
           <PackageReference Include="Microsoft.Win32.Registry" Version="4.5.0" />    </ItemGroup>    <!--Targeting .NET FRAMEWORK
     (4.7, 4.7.1, 4.7.2)-->    <ItemGroup Condition="'$(TargetFramework)'
     == 'net47' OR '$(TargetFramework)' == 'net471' OR '$(TargetFramework)' == 'net472'">
           <PackageReference Include="Newtonsoft.Json" Version="12.0.2" />
           <PackageReference Include="Microsoft.AspNet.WebApi.Client" version="5.2.3" />
           <PackageReference Include="Microsoft.AspNet.WebApi.Core" version="5.2.3" />
           <PackageReference Include="NLog.Extensions.Logging" Version="1.5.4" />
           <PackageReference Include="NLog.WindowsEventLog" Version="4.6.7" />
           <PackageReference Include="System.Diagnostics.EventLog" Version="4.5.0" />
           <PackageReference Include="System.Configuration.ConfigurationManager" Version="4.5.0" />
           <PackageReference Include="System.Data.SqlClient" Version="4.6.1" />
           <PackageReference Include="System.Linq" Version="4.3.0" />
           <PackageReference Include="Microsoft.Win32.Registry" Version="4.5.0" />    </ItemGroup>    <ItemGroup>
           <Folder Include="Properties\" />    </ItemGroup>    <ItemGroup>
           <ProjectReference Include="..\LoggingManager.Nlog.RabbitMQ.Target\LoggingManager.Nlog.RabbitMQ.Target.csproj">
              <PrivateAssets>all</PrivateAssets>
           </ProjectReference>    </ItemGroup>    <PropertyGroup>
           <TargetsForTfmSpecificBuildOutput>$(TargetsForTfmSpecificBuildOutput);CopyProjectReferencesToPackage</TargetsForTfmSpecificBuildOutput>
           <!-- include PDBs in the NuGet package -->
           <AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
     </PropertyGroup>    <Target Name="CopyProjectReferencesToPackage"
     DependsOnTargets="ResolveReferences">
           <ItemGroup>
              <BuildOutputInPackage Include="@(ReferenceCopyLocalPaths->;WithMetadataValue('ReferenceSourceTarget',
     'ProjectReference')->;WithMetadataValue('PrivateAssets', 'all'))" />
           </ItemGroup>    </Target>    <ItemGroup>
           <Content Include="NLog.config">
              <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
           </Content>    </ItemGroup>    <Target Name="PostBuild" AfterTargets="pack">
           <Exec Command="nuget push &quot;$(PackageOutputPath)\$(PackageId).$(PackageVersion).nupkg&quot;
     -ApiKey 24FCB347-75E6-41D6-BF80-E49CB142C092 -Source &quot;https://gyldendalnugetserver.azurewebsites.net/nuget&quot;
     -ConfigFile &quot;..\.nuget\nuget.config&quot;&#xD;&#xA;nuget push &quot;$(PackageOutputPath)\$(PackageId).$(PackageVersion).symbols.nupkg&quot;
     -ApiKey 24FCB347-75E6-41D6-BF80-E49CB142C092 -Source &quot;https://gyldendalnugetserver.azurewebsites.net/nuget&quot;
     -ConfigFile &quot;..\.nuget\nuget.config&quot;&#xD;&#xA;Exit /B 0&#xD;&#xA;" />    </Target> </Project>

【问题讨论】:

    标签: asp.net asp.net-mvc .net-core nuget-package .net-standard


    【解决方案1】:

    您似乎有多个拼写错误。

    例如

    <BuildOutputInPackage Include="@(ReferenceCopyLocalPaths->;WithMetadataValue('ReferenceSourceTarget',
     'ProjectReference')->;WithMetadataValue('PrivateAssets', 'all'))" />
    

    应该是

    <BuildOutputInPackage Include="@(ReferenceCopyLocalPaths->WithMetadataValue('ReferenceSourceTarget',
     'ProjectReference')->WithMetadataValue('PrivateAssets', 'all'))" />
    

    即您应该删除-&gt; 符号之后的分号符号

    可能是-&gt;自动替换为&amp;gt;后手动更改的结果

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-01-31
      • 2015-10-13
      • 2021-01-26
      • 2016-02-20
      • 2016-03-06
      • 1970-01-01
      • 2015-07-21
      相关资源
      最近更新 更多