gpt4 book ai didi

visual-studio-2017 - C++ 项目中 NuGet 包的 PackageReference

转载 作者:行者123 更新时间:2023-12-04 18:20:09 24 4
gpt4 key购买 nike

我是一个项目的一部分,我们在 Visual Studioe 中将 packages.config 文件用于 NuGet 包,然后通过项目文件中的 Import 语句包含每个包依赖项。

如果您总是想要这些包,这很好用,但是我们有一些条件包,如果开发人员不需要/不想要它,我们希望排除这些包。我找到了 PackageReference tag ,这将使依赖更加清晰,并让我们有条件地包含包。

C# 项目似乎完全支持它,但我不知道 C++ 项目是否支持它。

我已经尝试删除我们所有的 packages.config 文件并用 PackageReference 标签替换所有引用,但 PackageReference 标签似乎没有被包管理器接收。我已经浏览了所有可以为 Visual Studio 找到的“迁移工具”,但没有运气。

是否可以将它用于 C++ 项目?如果没有,是否有一种解决方法可以让我有条件地排除某些包?

我使用的是 Visual Studio Professional 15.6.7。

最佳答案

Is it possible to use it for C++ projects?



目前, PackageReference 而不是 尚支持 C++ 项目。 NuGet 团队正在评估它以支持 future 的版本。您可能已经通过一些技巧让它工作了,但是如果您创建一个新的 c++ 项目并尝试将此包安装为 PackageReference ,它将不允许您。所以我建议你继续为你的 C++ 项目和库使用 packages.config。

此外,您可以在 Visual Studio UserVoice 站点上添加您的请求或为此功能投票: Use PackageReference in vcxproj 。当有足够的社区投票并为此反馈添加评论时,产品团队成员会认真对待此反馈。

If not, is there a workaround that lets me exclude certain packages conditionally?



您可以在自定义目标文件中包含条件引用,并将 dll 部署到包的 tools 文件夹中,这样它们就不会被 Nuget 自动添加为引用。

认证 : NuGet update and conditional references

希望这可以帮助。

关于visual-studio-2017 - C++ 项目中 NuGet 包的 PackageReference,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50599104/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com