0

我的解决方案中有很多nuget包已经过时了,所以我逐一检查了它们,并将它们更新到最新版本或最接近的版本。

在构建和测试解决方案后,我尝试将其签入。生成服务器返回错误。

我取消了我所做的所有更改,并从源代码管理中获得了最新版本,这是在构建服务器上成功构建的最后一个版本。

我向文件中添加了一个空格字符,并尝试了测试签入。这次失败的原因完全相同!

我甚至尝试在旧版本的VisualStudio中打开该项目,但它也不会从中检入。

考虑到这可能是构建服务器上的问题,我在另一个项目中尝试了相同的测试。此签入没有问题。

下面是构建服务器进程中出现故障的行的示例。。。

C: \Windows\ServiceProfiles\NetworkService\.nuget\packages\microsoft.extensions.apidescription.server\6.0.5\build\microsoft。延期。Api描述。服务器目标(5,38):错误MSB4186:无效的静态方法调用语法:“[MSBuild]::VersionLessThanOrEquals('$(TargetFrameworkVersion)','2.0')”。找不到方法“[MSBuild]::VersionLessThanOrEquals”。静态方法调用的形式应为:$([FullTypeName]::method()),例如$([System.IO.Path]::Combine(`a`,`b`))。检查所有参数是否已定义、类型是否正确以及指定的顺序是否正确。[C:\vstsagent\vsts-agent-win-x86-2.142.1\_work\11\s\project\project.csproj]

我在堆栈溢出上看到过一些类似的问题,但没有一个是完全相同的,另外我也不太明白这个错误想要告诉我什么。

我不明白为什么签入失败,因为最新版本和我尝试签入的版本之间的唯一区别是空格字符。

我该如何解决这个问题?

编辑添加:我发现一个问题似乎与我的问题相符,但就像上一张海报一样,我不知道该在哪里做。。。https://learn.microsoft.com/en-us/answers/questions/1353483/invalid-static-method-invocation-syntax-(msbuild)考虑到nuget之前没有升级过,至少在服务器上没有升级,降级nuget似乎是一个奇怪的选项。

新编辑:

我认为这可能与包裹有关,因为这个条目。。。

错误MSB4186:无效的静态方法调用语法:“[MSBuild]::VersionLessTanOrEquals('$(TargetFrameworkVersion)','2.0')“。找不到方法“[MSBuild]::VersionLessThanOrEquals”。静态方法调用的形式应为:$([FullTypeName]::Method()),例如$([System.IO.Path]::Combine(`a`,`b`))。检查所有参数是否已定义,类型是否正确,以及以正确的顺序指定。[C:\vstsagent\vsts-agent-win-x86-2.142.1\_work\11\s\API\API.csproj]

我真的不知道如何进行调试。

2
  • 看起来问题来自目标文件,它的内容是什么? 评论 2023年12月20日3:35
  • @BowmanZhu-MSFT感谢您的评论。对不起,我不明白你所说的目标文件是什么意思,你能解释一下吗? 评论 2023年12月21日10:08

1答案1

重置为默认值
0

经过几天的调查,我似乎已经解决了这个问题。

作为测试的一部分,我创建了一个全新的管道,完全复制了原始管道,目的是在不改变原始管道的情况下修改一些设置。

当我通过新管道运行这个项目时,它运行得很好。

我已经仔细检查了所有设置,除了名称中有一个新后缀外,两个管道都是相同的。

如果有人看到这一点,并可以评论为什么这样做,我会非常感兴趣!

  • 尝试导出已处理和未处理的管道JSON定义。比较一下,你可能会发现一些不同的东西 评论 1月4日2:36
  • @BowmanZhu-MSFT好主意,谢谢。如果我发现有什么有趣的地方,我会更新问题/添加另一个答案 评论 1月4日8:48
  • @BowmanZhu-MSFT快速更新。如前所述,我比较了两个导出的Json文档。有一些细微的差异,例如步骤名称、任务id和_links部分(Badge等)的大小写。除此之外,它们是相同的。再次感谢您的建议。 评论 1月4日10:05

你的答案

单击“发布您的答案”,表示您同意我们的服务条款并确认您已阅读我们的隐私政策.

不是你想要的答案吗?浏览标记的其他问题问你自己的问题.