【问题标题】:Error when trying to build solution in TFS 2015 sp3 - can't figure it out尝试在 TFS 2015 sp3 中构建解决方案时出错 - 无法弄清楚
【发布时间】:2021-03-03 09:41:16
【问题描述】:

我们正在使用 VS2019 进行开发,在 On-Prem TFS 2015 Service Pack 3 中管理所有代码和构建。

遇到了以下 TFS 构建问题,无法弄清楚真正的问题是什么。我验证了解决方案/项目中的 FxCopAnalyzers 是通过 Nuget 安装并签入到 TFS 中的。这一切都在我的沙盒工作站上本地构建。 TFS 警告声称找不到文件,但它们在那里。非常沮丧。

在构建配置 > 进程选项卡中,该解决方案使用默认 v12 构建模板(与 ~50ish 其他构建一样),我已将其设置为作为 CI 构建运行。

我错过了一些东西,但我已经为此奋斗了很长时间,我认为我有狭隘的视野。 真正的问题可能是什么?非常感谢任何帮助。提前致谢。

CSC: An instance of analyzer Microsoft.CodeAnalysis.VersionCheckAnalyzer.AnalyzerVersionCheckAnalyzer cannot be created from E:\BuildAgentWorking\4\ACTS\ACTS v1.0 SLN (CI)\src\packages\Microsoft.CodeAnalysis.VersionCheckAnalyzer.2.9.8\analyzers\dotnet\Microsoft.CodeAnalysis.VersionCheckAnalyzer.dll : Could not load file or assembly 'Microsoft.CodeAnalysis, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified..
 CSC: An instance of analyzer Microsoft.CodeQuality.CSharp.Analyzers.Maintainability.CSharpVariableNamesShouldNotMatchFieldNamesAnalyzer cannot be created from E:\BuildAgentWorking\4\ACTS\ACTS v1.0 SLN (CI)\src\packages\Microsoft.CodeQuality.Analyzers.2.9.8\analyzers\dotnet\cs\Microsoft.CodeQuality.CSharp.Analyzers.dll : Could not load file or assembly 'Microsoft.CodeAnalysis, Version=2.9.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified..
 CSC: An instance of analyzer Microsoft.CodeQuality.Analyzers.Maintainability.DoNotIgnoreMethodResultsAnalyzer cannot be created from E:\BuildAgentWorking\4\ACTS\ACTS v1.0 SLN (CI)\src\packages\Microsoft.CodeQuality.Analyzers.2.9.8\analyzers\dotnet\cs\Microsoft.CodeQuality.Analyzers.dll : Could not load file or assembly 'Microsoft.CodeAnalysis, Version=2.9.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified..
 CSC: An instance of analyzer Microsoft.CodeQuality.Analyzers.ApiDesignGuidelines.UriPropertiesShouldNotBeStringsAnalyzer cannot be created from E:\BuildAgentWorking\4\ACTS\ACTS v1.0 SLN (CI)\src\packages\Microsoft.CodeQuality.Analyzers.2.9.8\analyzers\dotnet\cs\Microsoft.CodeQuality.Analyzers.dll : Could not load file or assembly 'Microsoft.CodeAnalysis, Version=2.9.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified..
 CSC: An instance of analyzer Microsoft.CodeQuality.Analyzers.ApiDesignGuidelines.AbstractTypesShouldNotHaveConstructorsAnalyzer cannot be created from E:\BuildAgentWorking\4\ACTS\ACTS v1.0 SLN (CI)\src\packages\Microsoft.CodeQuality.Analyzers.2.9.8\analyzers\dotnet\cs\Microsoft.CodeQuality.Analyzers.dll : Could not load file or assembly 'Microsoft.CodeAnalysis, Version=2.9.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified..

【问题讨论】:

    标签: tfs tfsbuild


    【解决方案1】:

    如果您引用了 Microsoft.Net.Compilers 包,请将其更新到最新版本。如果没有,请添加对其最新版本的引用。

    如果您的 Microsoft.CodeAnalysis.FxCopAnalyzers 版本对于您的 Visual Studio 版本太高,您可能会收到以下警告:

    warning CS8032 ...
    

    要查找支持的最高版本,请参阅此文档:在 Visual Studio 中安装 FxCop 分析器 -> FxCopAnalyzers package versions

    【讨论】:

    • 好的,安装了最新的 Microsoft.Net.Compilers.Toolset(您引用的那个被标记为已弃用并使用工具集)。现在,不同的错误。请指教。 ...\packages\Microsoft.Net.Compilers.Toolset.3.8.0\build\Microsoft.Net.Compilers.Toolset.props (2):项目的默认 XML 命名空间必须是 MSBuild XML 命名空间。如果项目以 MSBuild 2003 格式创作,请将 xmlns="schemas.microsoft.com/developer/msbuild/2003" 添加到 元素。如果项目是以旧的 1.0 或 1.2 格式创作的,请将其转换为 MSBuild 2003 格式。
    • 你做过nuget恢复包吗?如果您之前没有做过,请先尝试执行 nuget restore 如果您做过,请分享您的管道定义和完整的日志文件。
    • 注意:在构建项目时,项目会从根目录加载需要的包。请确保您的包在正确的目录中。
    • 谢谢 Alina - 我正在度假,所以这是你询问的信息... - Ran Nuget 包恢复。 VS2019 说“......所有软件包都已经安装......” - FXCopAnalyzers 是 v2.9.8。 - TFS 是 v2015 sp3。 - 这是一个完整的 .Net 4.7.2 控制台应用程序解决方案,带有 n 层项目。 - /packages 文件夹位于解决方案的根目录中,所有 nuget 包都已完全签入源代码管理。 - 注意:我们所有其他解决方案都使用相同版本的 FXCopAnalyzers 并且构建良好,所以这个解决方案肯定有问题,但我无法弄清楚具体问题是什么。
    • 我刚刚在 docs.microsoft.com/en-us/visualstudio/code-quality/… 上看到了这一点,在 Visual Studio 2019 16.8 和 .NET 5.0 之前,这些分析器作为 Microsoft.CodeAnalysis.FxCopAnalyzers NuGet 包提供。从 Visual Studio 2019 16.8 和 .NET 5.0 开始,这些分析器包含在 .NET SDK 中。它们也可用作 Microsoft.CodeAnalysis.NetAnalyzers NuGet 包。 Microsoft.CodeAnalysis.FxCopAnalyzers NuGet 包将很快被弃用。这可能是问题(VS 和 .NET 更新)吗?
    猜你喜欢
    • 1970-01-01
    • 2022-07-24
    • 2016-09-24
    • 2021-04-08
    • 1970-01-01
    • 1970-01-01
    • 2016-07-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多