【问题标题】:nuget packages folder is created in solution level and project level hint path not able to find itnuget packages 文件夹在解决方案级别创建,项目级别提示路径找不到它
【发布时间】:2020-05-13 12:46:18
【问题描述】:

MVC项目找不到nuget包并抛出错误。丢失的文件是packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.1\build\net46\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props.The packages文件夹是在解决方案级别创建的,并且提示路径在 csproj 中使用如下,有什么建议吗?将包文件夹从解决方案级别移动到项目级别是可行的,但我不想每次都手动执行此操作,因为此 mvc 项目是动态创建的,并且在 F5 上我希望构建成功。

 <ItemGroup>
    <Reference Include="Microsoft.CodeDom.Providers.DotNetCompilerPlatform">
      <HintPath>packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.1\lib\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll</HintPath>
    </Reference>
  </ItemGroup>

【问题讨论】:

  • &lt;HintPath&gt;packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.1\lib\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll&lt;/HintPath&gt; 更改为 &lt;HintPath&gt;$(SolutionDir)packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.1\lib\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll&lt;/HintPath&gt; 以确保 msbuild 将在解决方案目录中搜索包。

标签: visual-studio nuget nuget-package csproj nuget-package-restore


【解决方案1】:

这是与路径相关的问题。在packages\xxx\xxx 之前添加$(SolutionDir) 以确保msbuild 将在解决方案级别的packages 文件夹中搜索程序集。

应该是:

  <ItemGroup>
    <Reference Include="Microsoft.CodeDom.Providers.DotNetCompilerPlatform">
      <HintPath>$(SolutionDir)packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.1\lib\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll</HintPath>
    </Reference>
  </ItemGroup>

【讨论】:

  • 我试过了,还是不行,手动复制粘贴csproj所在的packages文件夹后构建成功。
  • 你在构建之前恢复了包吗?如果将其更改为 ..\packages\PackageName...? `...\Packages` 可能会更好。请确保您的项目位于解决方案目录下,以便您的项目可以从解决方案级别访问包文件夹。
  • 这似乎对我不起作用。我们还有其他使用 nuget.config 的方法吗?
  • Nuget.config 可以指定包的存储位置。请参阅repositoryPath,它可能会有所帮助。而且我真的很困惑为什么我的解决方法不起作用,您能否分享有关您收到的错误消息的详细信息。
  • 它的工作。我之前错过了一个目标元素 $(SolutionDir) 。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-12-08
  • 1970-01-01
  • 1970-01-01
  • 2018-09-05
  • 2017-10-28
  • 2014-01-12
  • 1970-01-01
相关资源
最近更新 更多