Azure devops 如何在Azure Devops中使用msbuild创建具有发布和调试配置的nuget文件
我需要创建一个nuget文件,其中包含dll的发行版和调试版。我需要能够在Azure Devops中使用MSBuild任务执行此操作 我之所以使用MSBuild,是因为NuGet任务中存在一个错误,如果使用新的packagereference和projectreference,它就不能正确地处理依赖项信息 我试过做两个构建,一个在调试中,一个在发行版,然后让发行版做一个包。这仍然只给了我一个文件。我还尝试使用一个nuspec文件来告诉它抓取两个文件,但这仍然只导致包中有一个文件 如何在Azure Devops中使用msbuild创建具有发布和调试配置的nuget文件 很抱歉,您目前无法使用msbuild创建同时具有发布和调试配置的nuget文件 这是因为NuGet包通常只包含特定目标框架的一组程序集。它并不是真正设计用来发布调试和发布版本的 如果使用nuget,则可以在Azure devops 如何在Azure Devops中使用msbuild创建具有发布和调试配置的nuget文件,azure-devops,msbuild,nuget-package,Azure Devops,Msbuild,Nuget Package,我需要创建一个nuget文件,其中包含dll的发行版和调试版。我需要能够在Azure Devops中使用MSBuild任务执行此操作 我之所以使用MSBuild,是因为NuGet任务中存在一个错误,如果使用新的packagereference和projectreference,它就不能正确地处理依赖项信息 我试过做两个构建,一个在调试中,一个在发行版,然后让发行版做一个包。这仍然只给了我一个文件。我还尝试使用一个nuspec文件来告诉它抓取两个文件,但这仍然只导致包中有一个文件 如何在Azure
.nuspec
中使用自定义MSBuild.targets
文件,该文件具有自己的引用和配置信息:
查看更多详细信息
但是,如果您想使用MSBuild,我们无法直接指定DLL文件,我们必须为debug
和release
创建两个包,然后在项目文件中添加一个自定义MSBuild.targets
文件,其属性为true
和build\
,如下所示:
<ItemGroup>
<None Include="build\*.targets" Pack="True" PackagePath="build\" />
</ItemGroup>
有关更多详细信息,请查看
希望这有帮助
<Choose>
<When Condition=" '$(Configuration)'=='debug' ">
<ItemGroup>
<PackageReference Include="MyRefDebug">
<Version>1.0</Version>
</PackageReference>
</ItemGroup>
</When>
<Otherwise>
<ItemGroup>
<PackageReference Include="MyRefRelease">
<Version>2.0</Version>
</PackageReference>
</ItemGroup>
</Otherwise>
</Choose>