
[英]\MSBuild\16.0\Bin\Microsoft.CSharp.targets file not found
[英]The imported project "C:\Microsoft.CSharp.targets" was not found
今天尝试在 Visual Studio 2005 中打开 Visual Studio 2008项目时出现此错误:
未找到导入的项目“C:\Microsoft.CSharp.targets”。
在记事本(或记事本++)中打开您的 csproj 文件,找到以下行:
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
并将其更改为
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
这是一个全局解决方案,不依赖于特定的包或 bin。
就我而言,我从根目录中删除了Packages文件夹。
也许这是因为你的包在那里,但编译器没有找到它的引用。 所以首先删除旧包并添加新包。
添加新包的步骤
这不是正确的解决方案,但我在这里发布了它,因为我面临同样的问题。
就我而言,我什至无法在 Visual Studio 中打开我的解决方案,也没有得到其他 SO 答案的任何帮助。
对我来说,问题是项目的路径包含 %20 个字符,因为 git 在克隆存储库时添加了这些字符而不是空格。 另一个问题可能是包的路径是否太长。
在我来说,我无法装入在我的解决方案等5个项目之一了。
它有助于关闭 Visual Studio ,我不得不删除packages
文件夹下的Microsoft.Net.Compilers.1.3.2
nuget 文件夹。
之后,再次打开您的解决方案并按预期加载项目
可以肯定的是,在删除文件夹之前关闭 VS 的所有实例。
我曾经在 csproj 文件中有以下这行:
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
删除此文件后,它工作正常。
如果您遇到Microsoft.CSharp.Core.targets not found
的错误,这些是我纠正我的步骤:
打开任何以前的工作项目文件夹并导航到错误中显示的链接,即Projects/(working project name)/packages/Microsoft.Net.Compilers.1.3.2/tools/
并搜索Microsoft.CSharp.Core.targets
文件。
复制这个文件,放到非工作项目的tools folder
(即导航到非工作项目中的tools文件夹,如上图)
现在关闭您的项目(如果它已打开)并重新打开它。
它现在应该可以工作了。
此外,要确保在您现在打开的 Visual Studio 项目中一切正常,请转到Tools > NuGetPackage Manager > Manage NuGet Packages For Solution
。 在这里,您可能会发现一个错误,指出 CodeAnalysis.dll 正在被另一个应用程序使用。
再次,转到tools folder
,找到指定的文件并删除它。 回到Manage NuGet Packages For Solution
。 您会找到一个链接,要求您重新加载,单击它并重新安装所有内容。
您的项目现在应该可以正常工作了。
就我而言,我在记事本中打开了我的 .csproj 文件并删除了以下三行。 像魅力一样工作:
<Import Project="..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" />
<Import Project="..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" />
<Import Project="..\packages\Microsoft.Net.Compilers.1.3.2\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.1.3.2\build\Microsoft.Net.Compilers.props')" />
重新安装Windows后我得到了这个。 Visual Studio 已安装,我可以在“新建项目”窗口中看到 Silverlight 项目类型,但打开一个不起作用。 解决方案很简单:我必须安装 Silverlight Developer 运行时和/或 Microsoft Silverlight 4 Tools for Visual Studio。 这可能看起来很愚蠢,但我忽略了它,因为我认为它应该可以工作,因为 Silverlight 项目类型可用。
好吧,如果它这么说呢:在 gt/lt 标志之间
导入项目="$(MSBuildExtensionsPath)\\Microsoft\\Silverlight\\v3.0\\Microsoft.Silverlight.CSharp.targets" /
我如何修复目标错误?
我还在演示项目中发现了导入字符串(特别是 Rob Eisenburg 的“构建您自己的 MVVM 框架”)。
如果您用 lomaxx VS2010 RTM 报告建议的导入替换该导入,您需要安装它。
对于Microsoft.WebApplications.targets
错误,您可以:
Microsoft.WebApplication.targets
”从开发机器文件复制到 TFS 构建机器。这是帖子。
在安装了 SL 5 的情况下打开在 SL 4 中构建的 Silverlight 项目时,也会发生此错误。
以下是错误消息示例:未找到导入的项目“C:\\Program Files (x86)\\MSBuild\\Microsoft\\Silverlight\\v4.0\\Microsoft.Silverlight.CSharp.targets”。
注意 v4.0。
要解决,请编辑项目并找到:
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
并将其更改为 v5.0。
然后重新加载项目,它将打开(除非您没有安装 SL 5)。
我删除了 obj 文件夹,然后按预期加载了项目。
有时问题可能与 .csproj 文件中的硬编码 VS 版本有关。 如果您的 csproj 中有这样的内容:
[...]\VisualStudio\v12.0\WebApplications\Microsoft.WebApplication.targets"
您应该检查数字是否正确(错误的原因可能是该项目是使用另一个版本的 Visual Studio 创建的)。 如果它是错误的,请将其替换为您当前版本的构建工具或使用 VS 变量:
[...]\VisualStudio\v$(VisualStudioVersion)\WebApplications\Microsoft.WebApplication.targets"
我在执行 Ansible playbook 时遇到了这个问题,所以我想在这里添加 2 美分。 我注意到一条关于缺少 Visual Studio 14 的警告消息。Visual Studio 版本 14 于 2015 年发布,我的问题的解决方案是在我的 Azure DevOps 代理的主机上安装 Visual Studio 2015 Professional。
在尝试恢复后,关闭 VS,删除失败的包,重新打开,尝试恢复,多次我只是删除了包中的所有内容,当我进行恢复时,它运行良好。
对我来说,问题是路径.. 克隆名称中有空格的项目时。 项目文件夹被命名为"Sample%20-%205"
而不是它应该是: "Sample - 5"
打开项目很好,但是构建失败了
找不到文件:/packages/Microsoft.Net.Compilers.1.3.2/tools/Microsoft.CSharp.Core.targets
对我来说,问题是解决方案是深入到文档文件夹中,并且在 windows 10 上达到了路径字符限制。 一旦我将解决方案文件夹向上移动了几个文件夹,就解决了这个问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.