'Version'属性未在nuspec文件中声明

Sha*_*mun 8 .net nuget azure-devops azure-pipelines visual-studio-2017

当我尝试使用VSTS打包.net核心解决方案时,我收到The 'Version' attribute is not declared错误.我的nuspec文件如下所示:

<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
  <metadata minClientVersion="3.3.0">
    <id>YYY.AspNetCore.CustomMapper</id>
    <version>0.0.1</version>
    <authors>build@YYYYYY.com</authors>
    <owners>YYY YYY</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>YYY.AspNetCore</description>
    <tags>YYY</tags>
    <contentFiles>
        <files include="wwwroot\**" buildAction="EmbeddedResource" copyToOutput="true" />
        <files include="Areas\CustomMapper\readme.txt" buildAction="EmbeddedResource" copyToOutput="true" />
    </contentFiles>
    <dependencies>
    <group>
        <dependency id="EntityFramework" Version="6.1.0" />
        <dependency id="Microsoft.AspNetCore" Version="1.1.0" />
        <dependency id="Microsoft.AspNetCore.Mvc" version="1.1.0" />
        <dependency id="Microsoft.AspNetCore.StaticFiles" version="1.1.0" />
        <dependency id="Microsoft.Extensions.Logging.Debug" version="1.1.0" />
        <dependency id="YYY.Web.AspNetCore" version="1.0.1" />
        <dependency id="SimpleInjector.Integration.AspNetCore" version="4.0.10" />
        <dependency id="SimpleInjector.Integration.AspNetCore.Mvc" version="4.0.10" />
    </group>
  </dependencies>
  </metadata>
  <files>
    <file src="wwwroot\**" target="content\wwwroot" />
    <file src="Areas\CustomMapper\readme.txt" target="" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.Data.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.Provider.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.Services.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.WebApi.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.Backend.WebApi.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.Provider.Common.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.AspNetCore.CustomMapper.dll" target="lib\net452" />
  </files>
</package>
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我为什么会发生这种错误?

Sha*_*mun 14

实际上,问题是"版本"属性区分大小写.我将Version属性更改为EntityFramework和Microsoft.AspNetCore的版本,现在已修复.nuspec现在如下所示:

<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
  <metadata minClientVersion="3.3.0">
    <id>YYY.AspNetCore.CustomMapper</id>
    <version>0.0.1</version>
    <authors>build@YYYYYY.com</authors>
    <owners>YYY YYY</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>YYY.AspNetCore</description>
    <tags>YYY</tags>
    <contentFiles>
        <files include="wwwroot\**" buildAction="EmbeddedResource" copyToOutput="true" />
        <files include="Areas\CustomMapper\readme.txt" buildAction="EmbeddedResource" copyToOutput="true" />
    </contentFiles>
    <dependencies>
    <group>
        <dependency id="EntityFramework" version="6.1.0" />
        <dependency id="Microsoft.AspNetCore" version="1.1.0" />
        <dependency id="Microsoft.AspNetCore.Mvc" version="1.1.0" />
        <dependency id="Microsoft.AspNetCore.StaticFiles" version="1.1.0" />
        <dependency id="Microsoft.Extensions.Logging.Debug" version="1.1.0" />
        <dependency id="YYY.Web.AspNetCore" version="1.0.1" />
        <dependency id="SimpleInjector.Integration.AspNetCore" version="4.0.10" />
        <dependency id="SimpleInjector.Integration.AspNetCore.Mvc" version="4.0.10" />
    </group>
  </dependencies>
  </metadata>
  <files>
    <file src="wwwroot\**" target="content\wwwroot" />
    <file src="Areas\CustomMapper\readme.txt" target="" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.Data.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.Provider.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.Services.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.WebApi.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.Backend.WebApi.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.CustomMapper.Provider.Common.dll" target="lib\net452" />
    <file src="bin\Release\net452\win7-x86\YYY.AspNetCore.CustomMapper.dll" target="lib\net452" />
  </files>
</package>
Run Code Online (Sandbox Code Playgroud)

  • 澄清:他指的是`dependency`元素*的`version`属性,它们不能是`Version`,而必须是小写的`version`。它欺骗了我,因为我从其他一些 PackageReferences 复制了过去,但没有发现。此外,错误消息非常缺乏。 (5认同)
  • 我实际上做了一个复制粘贴,然后在区分大小写方面遇到了困难。当时,.Net Core 也没有足够的示例来获得帮助! (2认同)