2017-10-18 66 views
-2

我有一个文件名MVCWebUIComponent.csproj我下面加行到我的文件错误MSB4057:目标“包”并不在一个名为MVCWebUIComponent.csproj

<PropertyGroup> 
     <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion> 
     <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath> </PropertyGroup> 

    <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" /> 

,但它不会导入项目文件存在目标包V10.0到这个路径

C:\ Program Files文件(x86)的\的MSBuild \微软\ VisualStudio的

。 我有v9.0文件夹,但我需要将包v10.0导入到我的visual studio 2017中。我该怎么做?

回答

0

我有v9.0文件夹,但我需要导入包v10.0到我的visual studio 2017.我该怎么办?

不知道为什么你要导入包V10.0到您的Visual Studio 2017年。既然你想将其导入到Visual Studio 2017的$(MSBuildExtensionsPath32)值应该是新的位置是相对的MSBuild目录:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild 

因此,它不会将目标包v10.0导入路径C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio

此外,导入命令:

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" /> 

是关断版原装线允许的Visual Studio(条件=“假”)仍然认为你的项目是一个有效的Web应用程序项目(这是VS 2010 SP1本身的诀窍)。所以,通常,包v10.0不会被导入。

您可以创建一个Web应用程序项目,检查项目文件,你会发现下面的代码:

<PropertyGroup> 
    <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion> 
    <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath> 
    </PropertyGroup> 
    <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> 
    <Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" /> 
    <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" /> 

import命令<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />实际进口,当(Condition="false")最新的行会进口。

如果导入包V10.0到我的Visual Studio 2017年是你的坚持,你只需要添加一些东西到的csproj重定向MSBuildExtensionsPath

<PropertyGroup> 
    <MSBuildExtensionsPath32>C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio</MSBuildExtensionsPath32> 
</PropertyGroup> 
<Import Project="$(MSBuildExtensionsPath32)\v10.0\WebApplications\Microsoft.WebApplication.targets" /> 

注:既然你是有V9.0文件夹,你应该从其他机器复制v10.0。

+0

嗨,leo,非常感谢你的答复.. :-)我是jst试图解决这个问题。我是新网点和视觉工作室..我看到一些帖子关于这个&他们声明导入v10.0。你能告诉我如何解决这个问题吗?我有麻烦来解决它。在64位机器上运行32位MSBuild –

+0

你的意思是你想解决的问题“目标”包“不存在于项目文件名为MVCWebUIComponent.csproj”?或其他问题?如果是的话,你做了什么以及如何重现这个问题?另外,32位应用程序可以在64位机器上使用。如果你的原始问题不是关于“导入目标包v10.0”,我建议你可以用更多的细节信息来描述你的问题,你做了什么,你是如何解决它的,以及带有新问题的错误信息。 –

相关问题