【问题标题】:vs 2015 Error CS0006 Metadata file .dll' could not be foundvs 2015 错误 CS0006 元数据文件 .dll' 找不到
【发布时间】:2017-01-29 03:11:56
【问题描述】:

我正在尝试将两个新的测试项目添加到我的解决方案中。当我添加它们并添加引用时,构建最初会在调试文件夹中创建 dll。当我再次建造或重建时,它总是空的,我有一个 错误 CS0006 找不到元数据文件 .dll' 错误。我检查了构建配置管理器,并检查了框以将其输出到调试文件夹。我已经在解决方案上尝试了清理、构建、重建,我确保没有其他剩余的项目在周围放置并删除它们。我不确定我还能做些什么来让它构建和输出 dll 的..

【问题讨论】:

  • 在您的构建输出控制台中是否出现任何其他错误?

标签: c# visual-studio-2015 build nunit solution


【解决方案1】:

我通过将目标项目添加为依赖项来解决此问题。

在解决方案资源管理器中右键单击解决方案,选择项目依赖项,选择一个测试项目,然后选择构建 dll 的项目。

【讨论】:

    【解决方案2】:

    我有类似的问题。 当我手动取消编译时问题开始了。

    为了解决这个问题,我开始一个一个地编译项目。读取编译输出允许发现未编译的根项目。那个根项目有一个错误。并且不知何故没有报告该错误,看起来是由于手动取消编译。

    我去了那个根项目,修复了错误。仅编译该项目。然后编译整个解决方案。它得到了修复。

    【讨论】:

      【解决方案3】:

      我收到了同样的错误信息。

      我将核心类库 (netcore) 引用到核心 (xproj) 应用程序。

      问题是,我在 xproj 项目中通过手动编辑更改了输出路径:

      <OutputPath Condition="'$(OutputPath)'=='' ">..\bin\</OutputPath>
      

      但我的 xproj 应用程序有:

      <OutputPath Condition="'$(OutputPath)'=='' ">.\bin\</OutputPath>
      

      更改为相同的输出路径有所帮助。

      【讨论】:

        【解决方案4】:

        检查 .nuget 目录是否完整。

        文件名:

        -NuGet.Config
        -NuGet.exe
        -NuGet.targets
        -packages.config
        

        在我的情况下,分支中缺少 NuGet.exe,因为当我在 TFS 上签入时,它不会发送 NuGet.exe。

        【讨论】:

        • 如果我缺少 packages.config,我该如何解决?
        猜你喜欢
        • 2015-11-22
        • 1970-01-01
        • 2018-11-14
        • 2017-06-01
        • 1970-01-01
        • 2017-10-30
        • 2018-05-21
        • 2021-04-08
        • 1970-01-01
        相关资源
        最近更新 更多