错误NU1105无法找到项目信息 - 项目文件可能无效或缺少恢复所需的目标

问题描述 投票:30回答:6

突然之间,我在解决方案中的3个项目中遇到以下错误:

Error NU1105 Unable to find project information for 'C:\code\example\src\libs\example.I18n\example.I18n.csproj'. 
The project file may be invalid or missing targets required for restore.

只有项目中的内容发生了变化才会发生一些数据库更改,但过去从未遇到过任何问题。只有我更新到Visual Studio 2017 15.5的其他内容才会导致问题?

我尝试过 - 从源代码管理中删除和重新克隆解决方案。但仍然得到错误。我的同事机器没有问题所以必须是本地的东西。

其中一个.csproj文件的示例如果有帮助:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>net452</TargetFramework>
    <AssemblyName>Example.I18n</AssemblyName>
    <PackageId>Example.I18n</PackageId>
    <GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute>
    <GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute>
    <GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.Mvc.Core" Version="1.1.2" />
    <PackageReference Include="Microsoft.Extensions.Logging" Version="1.1.1" />
    <PackageReference Include="MessageFormat" Version="1.0.1" />
  </ItemGroup>

  <ItemGroup Condition=" '$(TargetFramework)' == 'net452' ">
    <Reference Include="System" />
    <Reference Include="Microsoft.CSharp" />
  </ItemGroup>

</Project>
visual-studio nuget visual-studio-2017 csproj nuget-package-restore
6个回答
12
投票

对我来说,磁盘上项目文件的外壳与解决方案文件中的外壳不匹配。

说我有LibraryA.csprojLibraryB.csproj的解决方案,其中LibraryB.csproj提到LibraryA.csproj。在解决方案文件中有一个不正确的LibraryA.csproj大小写会在构建NU1105时导致LibraryB.csproj

Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LibraryA", "LibraryA\Librarya.csproj", "{24DEBB3B-762A-491D-8B83-6D078C0B30C0}"

升级到Visual Studio 2017的15.5版后,我开始看到这个问题。我没有遇到版本15.4.5的这个问题。


52
投票

升级到Visual Studio 2017的15.6版后,我也得到了同样的结果。

关闭VS并删除.vs文件夹为我修复了它。


6
投票

如果解决方案中未包含引用的项目,也会出现此错误消息。我今天遇到了这个问题,我找到了修复here


3
投票

似乎某些项目已从解决方案文件中删除(不知道原因)。通过撤消这些解决方案文件更改来修复


2
投票

在对项目进行重复引用时遇到此错误。

<ProjectReference Include="..\ProjectA.csproj" />
<ProjectReference Include="..\ProjectA.csproj" />

删除重复的引用解决了错误。


2
投票

对我有用的是

  1. 删除违规项目
  2. 构建解决方案
  3. 重新添加项目。
© www.soinside.com 2019 - 2024. All rights reserved.