gpt4 book ai didi

visual-studio-2010 - MSBuild 是否有类似 lint 的工具?

转载 作者:行者123 更新时间:2023-12-04 21:47:16 25 4
gpt4 key购买 nike

我刚刚了解到 Visual Studio 2010 和 MSBuild 在它们将成功执行哪些 vcxproj MSBuild 文件时非常宽松 - 它们会忽略子任务和单个文件的缺失配置,但仍然成功执行构建任务。然而,这给我带来了问题,因为它导致跨多个配置的构建不一致,加上由于项目文件中的内部不一致,我不一定在 Visual Studio 的属性 View 中编辑它们。

到目前为止,我已经通过手动编辑 vcxproj 文件设法摆脱了最有问题的不一致,但鉴于此特定解决方案包含 80 多个项目文件,这并不是一个真正可以接受的策略。

是否有一种工具可以检查 MSBuild 文件的内部一致性并突出显示“您的项目文件说它提供配置 X、Y 和 Z 但文件 X 的自定义构建任务仅支持配置 X 和 Z”之类的缺失配置?

更新:与对 vcxproj 文件进行 linting 的更一般问题相反,我现在试图解决的具体问题是某些配置缺少条件的问题。不幸的是,添加和更新条件似乎比我使用查找和替换工具可以安全完成的要多一些。以编程方式正确执行此操作很可能需要 DOM 操作,并且鉴于我目前对构建文件的内部结构相当熟悉,因此使用能够进行基本结构 XML 验证的文本编辑器似乎是最快的完成方式手头的任务。

然而,我真正希望看到的是一种工具,它至少可以自动突出显示这些问题,以减少追踪它们所花费的时间。

最佳答案

配置通常是一个 VS 概念。它们不是 MSBuild 内置的,而是使用属性组上的条件特性实现的。您的项目文件很可能是有效的 MSBuild 项目,但其中一些不使用默认参数构建 - 我建议不要手动编辑它们,但要么

  • 使用查找和替换工具修复它们
  • 编写一个使用 Microsoft.Build.Construction 的小应用程序用于检查和修复项目文件的 API

  • 恐怕没有什么可以为您执行此操作。

    关于visual-studio-2010 - MSBuild 是否有类似 lint 的工具?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12340899/

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