Build Nuget不';t根据条件复制输出文件夹中的exe

Build Nuget不';t根据条件复制输出文件夹中的exe,build,nuget,.net-framework-version,platform,nuspec,Build,Nuget,.net Framework Version,Platform,Nuspec,我正在尝试创建一个nuget,它将复制输出文件夹中的DLL、exe。如果平台在x64中,它必须复制所有文件,但是如果我们在任何其他平台中,它必须排除.exe 所以我有一个像这样的nuspec: <?xml version="1.0" encoding="utf-8"?> <package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd"&

我正在尝试创建一个nuget,它将复制输出文件夹中的DLL、exe。如果平台在x64中,它必须复制所有文件,但是如果我们在任何其他平台中,它必须排除.exe

所以我有一个像这样的nuspec:

<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
  <metadata>
    <dependencies>
      <group targetFramework="net452" />
      <group targetFramework="net35" />
      <group targetFramework="net40" />
      <group targetFramework="net5.0.2" />
      <group targetFramework="netcoreapp3.1.11" />
    </dependencies>
  </metadata>
  <files>
    <file src="lib\**" exclude="**\VintasoftTwainService.exe" target="lib" />
    <file src="lib\**\VintasoftTwainService.exe" target="Build" />
    <file src="Septeo.ThirdParty.VintaSoft.targets" target="Build"/>
  </files>
</package>
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup Condition="'$(Platform)'=='x64' AND '$(TargetFramework)' == 'net5.0.2'">
        <Content Include="$(MSBuildThisFileDirectory)net5.0.2\**">
            <Link>x64\VintasoftTwainService.exe</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
    </ItemGroup>
    <ItemGroup Condition="'$(Platform)'=='x64' AND '$(TargetFramework)' == 'net35'">
        <Content Include="$(MSBuildThisFileDirectory)net35\**">
            <Link>x64\VintasoftTwainService.exe</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
    </ItemGroup>
    <ItemGroup Condition="'$(Platform)'=='x64' AND '$(TargetFramework)' == 'net40'">
        <Content Include="$(MSBuildThisFileDirectory)net40\**">
            <Link>x64\VintasoftTwainService.exe</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
    </ItemGroup>
    <ItemGroup Condition="'$(Platform)'=='x64' AND '$(TargetFramework)' == 'net452'">
        <Content Include="$(MSBuildThisFileDirectory)net452\**">
            <Link>x64\VintasoftTwainService.exe</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
    </ItemGroup>
    <ItemGroup Condition="'$(Platform)'=='x64' AND '$(TargetFramework)' == 'netcoreapp3.1.11'">
        <Content Include="$(MSBuildThisFileDirectory)netcoreapp3.1.11\**">
            <Link>x64\VintasoftTwainService.exe</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
    </ItemGroup>
</Project>

像这样的目标:

<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
  <metadata>
    <dependencies>
      <group targetFramework="net452" />
      <group targetFramework="net35" />
      <group targetFramework="net40" />
      <group targetFramework="net5.0.2" />
      <group targetFramework="netcoreapp3.1.11" />
    </dependencies>
  </metadata>
  <files>
    <file src="lib\**" exclude="**\VintasoftTwainService.exe" target="lib" />
    <file src="lib\**\VintasoftTwainService.exe" target="Build" />
    <file src="Septeo.ThirdParty.VintaSoft.targets" target="Build"/>
  </files>
</package>
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup Condition="'$(Platform)'=='x64' AND '$(TargetFramework)' == 'net5.0.2'">
        <Content Include="$(MSBuildThisFileDirectory)net5.0.2\**">
            <Link>x64\VintasoftTwainService.exe</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
    </ItemGroup>
    <ItemGroup Condition="'$(Platform)'=='x64' AND '$(TargetFramework)' == 'net35'">
        <Content Include="$(MSBuildThisFileDirectory)net35\**">
            <Link>x64\VintasoftTwainService.exe</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
    </ItemGroup>
    <ItemGroup Condition="'$(Platform)'=='x64' AND '$(TargetFramework)' == 'net40'">
        <Content Include="$(MSBuildThisFileDirectory)net40\**">
            <Link>x64\VintasoftTwainService.exe</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
    </ItemGroup>
    <ItemGroup Condition="'$(Platform)'=='x64' AND '$(TargetFramework)' == 'net452'">
        <Content Include="$(MSBuildThisFileDirectory)net452\**">
            <Link>x64\VintasoftTwainService.exe</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
    </ItemGroup>
    <ItemGroup Condition="'$(Platform)'=='x64' AND '$(TargetFramework)' == 'netcoreapp3.1.11'">
        <Content Include="$(MSBuildThisFileDirectory)netcoreapp3.1.11\**">
            <Link>x64\VintasoftTwainService.exe</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
    </ItemGroup>
</Project>

x64\VintasoftTwainService.exe
保存最新
x64\VintasoftTwainService.exe
保存最新
x64\VintasoftTwainService.exe
保存最新
x64\VintasoftTwainService.exe
保存最新
x64\VintasoftTwainService.exe
保存最新
但是,当我在x64中构建它时,无论我做什么,我都没有.exe,我不明白为什么。
请帮帮我。

我可以把邮局接上去吗?