【问题标题】:BuildTasks.Csc task could not be loaded from the assembly?无法从程序集中加载 BuildTasks.Csc 任务?
【发布时间】:2023-03-03 06:47:19
【问题描述】:

在这里问这样的问题我感到内疚,但我很茫然,希望能得到一些帮助。

类似 Web 应用程序的概念验证是在一台 PC 上构建的,然后放在一个 repo 上,以便在另一台 PC 上的不同位置下载。最初有一个自动构建功能设置,Azure 会在签入时自动构建和发布,但被删除了。事情在两端都在起作用,直到一侧包含大量排除的更改。现在我看到以下错误:

“Microsoft.CodeAnalysis.BuildTasks.Csc”任务无法
从程序集中加载 ...\packages\Microsoft.Net.Compilers.1.0.0\build..\tools\Microsoft.Build.Tasks.CodeAnalysis.dll。 无法加载文件或程序集 'file:///...\packages\Microsoft.Net.Compilers.1.0.0\tools\Microsoft.Build.Tasks.CodeAnalysis.dll' 或其依赖项之一。该系统找不到指定的文件。 确认声明正确,即组装 并且它的所有依赖项都是可用的,并且该任务包含一个 实现 Microsoft.Build.Framework.ITask 的公共类。

有人对从哪里开始寻找问题有任何建议吗?

【问题讨论】:

标签: asp.net asp.net-mvc entity-framework azure azure-devops


【解决方案1】:

对我来说,我试图在 VS 2013 中打开一个 MVC5 项目,但我收到了这个错误,在 VS 2017 中打开它并运行得很好。

【讨论】:

    【解决方案2】:

    我将解决方案从一个驱动器移到另一个驱动器,其中一个文件无法复制,因为“正在使用”,我单击忽略,产生了本文中描述的错误。复制丢失的文件手动修复它。

    文件:Microsoft.Build.Tasks.CodeAnalysis.dll 目标目录:packages\Microsoft.Net.Compilers.2.1.0\tools

    【讨论】:

      【解决方案3】:

      使用以下步骤:

      1) 删除包文件夹。
      2) 关闭视觉工作室。
      3) 打开项目并重建项目。

      【讨论】:

        【解决方案4】:

        我的项目是使用 .Net Core 2.2 构建的,但我安装了 .Net Core 3.0 预览版。我从我的系统中卸载了 .Net Core 3.0 并检查了我所有的类库,删除了 Microsoft.Net.Compilers 3.0,然后重新构建并运行。

        【讨论】:

          【解决方案5】:

          在 vs2017 社区中,“构建”菜单中出现了一个新项目。它在我使用后消失了,被称为“优化项目构建包”。我单击它并修复了所有问题,只需重新启动等。我在两台机器上完成了它。

          它所做的是删除 Microsoft.net.compilers 2.10.0 并替换为 Microsoft.CodeDom.Providers.DotNetCompilerPlatform 2.0.1

          所以你去 - 更自动......

          【讨论】:

            【解决方案6】:

            删除 bin 文件夹对我有用

            【讨论】:

              【解决方案7】:

              就我而言,解决方案是:

              1. 右键单击解决方案。
              2. 转到管理此解决方案的 Nuget 包。
              3. 搜索Microsoft.CodeDom.Providers.DotNetCompilerPlatform。
              4. 卸载搜索到的包。
              5. 重新启动 Visual Studio。

              【讨论】:

                【解决方案8】:

                右键单击解决方案。 转到此解决方案的管理 Nuget 包。 在浏览部分搜索 Microsoft.Net.Compilers。

                【讨论】:

                  【解决方案9】:
                  • 右键单击您的解决方案。
                  • 转到管理 Nuget 包。
                  • 搜索Microsoft.Net.Compilers。
                  • 根据需要安装或更新依赖项目。

                  【讨论】:

                  • 可能值得注意的是,此软件包现已弃用。改用 Microsoft.Net.Compilers.Tools
                  【解决方案10】:

                  就我而言:这对我有用。

                  事实证明,我的队友已经开始研究 Windows 10 开发,并在他的机器上安装了 Microsoft Build Tools 2015。

                  我从https://www.microsoft.com/en-us/download/details.aspx?id=48159安装了软件,问题解决了。

                  【讨论】:

                    【解决方案11】:

                    我从包文件夹中删除所有内容并重建解决方案。它对我有用。

                    【讨论】:

                      【解决方案12】:

                      我刚刚在全新安装的 Windows 10 机器上尝试了这个,但对我来说,问题最终是我没有安装 .NET 3.5 框架。这个 stackoverflow 问题有助于解释原因。

                      Cannot build WIX project on windows 10

                      【讨论】:

                        【解决方案13】:

                        就我而言,解决方案是:

                        使用 Windows 资源管理器并导航到有问题的路径: C:\MyApplication\Code\Main\ABCProject\ABCProject.UI\Bin

                        右键单击bin文件夹>选择属性>取消选中只读。

                        【讨论】:

                          【解决方案14】:

                          重新构建、清理解决方案并重新启动 Visual Studio 对我有用。

                          【讨论】:

                          • 是的,这里也一样,但是仅仅重启 VS 是不够的——我必须重启我的电脑,然后就好了。
                          • 重启我的电脑就可以了。不确定我是否需要对 nuget 包进行所有清理和重新安装。
                          【解决方案15】:

                          我已经尝试过之前描述的所有解决方案,但都没有奏效。

                          为我解决了这个问题,是从 NuGet 包管理器更新 Microsoft.Net.Compilers

                          【讨论】:

                          • 我遇到了相反的问题。我太乐观了,下载了最新的RC版本。当我恢复到最新的稳定版本时,一切正常。
                          • 我从 2.8 升级到 3.1.1,它解决了我的问题。谢谢!
                          【解决方案16】:

                          删除这三个目录即可解决问题。

                          • /包
                          • /bin
                          • /obj

                          注意:从解决方案中包含的所有项目(包括测试项目)中同时删除 /bin 和 /obj。

                          【讨论】:

                            【解决方案17】:

                            删除包并清理解决方案为我解决了问题。

                            【讨论】:

                              【解决方案18】:

                              我也尝试了最佳答案,但没有运气,所以删除了我的 bin 和 packages 目录的内容,关闭并重新打开 VS,现在一切正常。

                              【讨论】:

                              • 这个帮助了我。我尝试在 Parallels 的 VS 2015 中运行现有的 ASP.NET 项目,它给了我上面的错误。删除“bin”和“packages”文件夹,重新启动 VS 和干净的构建就可以了!
                              【解决方案19】:

                              问题隐藏在 TFS 上,您需要从 TFS 中删除文件夹 TestProject...\packages,签入,从本地目录中删除它并重新构建。成功了!

                              【讨论】:

                                【解决方案20】:

                                为我的项目创建新分支时出现此错误。

                                这让我发疯了一个小时。我尝试了互联网上的大部分建议,包括这个问题的公认答案。

                                然后我关闭了项目,再次打开它,清理它并且错误消失了。所以这意味着这可能是缓存问题。

                                无论如何,只是想分享。

                                【讨论】:

                                • 谢谢!对我来说,首先是包文件夹。然后,我仍然有错误,但重新启动 VS 工作:)
                                【解决方案21】:

                                事实证明,NuGet 包已提交到存储库并破坏了一切。从 repo 中删除 project\project\packages 目录解决了所有构建问题,因为 NuGet 会在构建时自动获取包。

                                【讨论】:

                                • 确保你在 VSTS 中包含实际的包文件夹,以及内容......我只是做了包的内容,并得到了错误
                                • 我的所有项目都提交了 nuget 包。唯一的问题是当您想将它们添加到源代码管理时,*.dll 文件默认是“排除项”,因此您只提交空目录而不是您的 nugets。这就是为什么即使恢复 nuget 也无济于事,因为目录已经到位,所以 nuget 认为一切都很好。
                                • 类似的线程解决方案可以在这里找到kx.cloudingenium.com/programming/net/…
                                • 我不知道为什么会这样......这是什么原因?
                                猜你喜欢
                                • 1970-01-01
                                • 2017-12-09
                                • 2016-01-13
                                • 2018-02-10
                                • 2013-11-25
                                • 2018-12-12
                                • 2016-09-11
                                • 1970-01-01
                                相关资源
                                最近更新 更多