Msbuild Microsoft.DotNet.Props目录不存在,无法生成xproj

Msbuild Microsoft.DotNet.Props目录不存在,无法生成xproj,msbuild,.net-core,azure-service-fabric,Msbuild,.net Core,Azure Service Fabric,我们正在尝试构建一个xproj项目,但出现了一个错误,即无法找到Microsoft.DotNet.Props文件,因为它看起来好像在查看错误的目录 查看xml MSBuildExtensionsPath32引用C:\Program Files\dotnet\sdk\1.1.4\,其中目录Microsoft\VisualStudio\..不存在。。。但是普通的MSBuild目录C:\Program Files(x86)\MSBuild确实有Microsoft.DotNet.Props文件C:\Pr

我们正在尝试构建一个xproj项目,但出现了一个错误,即无法找到Microsoft.DotNet.Props文件,因为它看起来好像在查看错误的目录

查看xml MSBuildExtensionsPath32引用
C:\Program Files\dotnet\sdk\1.1.4\
,其中目录
Microsoft\VisualStudio\..
不存在。。。但是普通的MSBuild目录
C:\Program Files(x86)\MSBuild
确实有Microsoft.DotNet.Props文件
C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v14.0\DotNet\Microsoft.DotNet.Props的目录

这是XML的一部分

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

<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props" Condition="'$(VSToolsPath)' != ''" />
编辑:这是整个XProjXML

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">14.0</VisualStudioVersion>
    <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
  </PropertyGroup>
  <Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props" Condition="'$(VSToolsPath)' != ''" />
  <PropertyGroup Label="Globals">
    <TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>
    <ProjectGuid>17107df8-0cfa-6946-917a-a9b8765cf9ea</ProjectGuid>
    <RootNamespace>Website</RootNamespace>
    <BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)'=='' ">.\obj</BaseIntermediateOutputPath>
    <OutputPath Condition="'$(OutputPath)'=='' ">.\bin\</OutputPath>
    <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
  </PropertyGroup>
  <PropertyGroup>
    <SchemaVersion>2.0</SchemaVersion>
    <IsServiceFabricServiceProject>True</IsServiceFabricServiceProject>
  </PropertyGroup>
  <ItemGroup>
    <DnxInvisibleContent Include="bower.json" />
    <DnxInvisibleContent Include=".bowerrc" />
  </ItemGroup>
  <ItemGroup>
    <DnxInvisibleFolder Include="wwwroot\Angular\dist\" />
  </ItemGroup>
  <ItemGroup>
    <Service Include="{82a7f48d-3b69-4b1e-b82e-3ada8210c987}" />
  </ItemGroup>
  <Import Project="$(VSToolsPath)\DotNet.Web\Microsoft.DotNet.Web.targets" Condition="'$(VSToolsPath)' != ''" />
</Project>

14
$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)
符合事实的
17107df8-0cfa-6946-917a-a9b8765cf9ea
网站
奥布吉
垃圾桶\
v4.6.1
2
符合事实的

您试图在.NET Core Sdk的1.1.4版本中使用预览工具(xproj)。VS 2015中提供的预览工具不适用于.NET Core的1.0+稳定工具

确保在您的开发机器和Jenkins服务器上都安装了.NET Core SDK的preview2版本,例如
1.0.0-preview2-003156
,并且解决方案目录中存在
global.json
文件,以告知VS使用此SDK预览版本:

{
  "sdk": {
    "version": "1.0.0-preview2-003156"
  }
}

作为一个长期的解决方案,我建议迁移到VS 2017,使用稳定且受支持的.NET核心工具。

问题没有足够的信息来重现错误。你能发布最小的代码来重现你的问题吗?此外,请提供关于如何调用构建、平台、安装的SDK、VS等的信息@jacekblasszczynski我现在已经更新了原始帖子谢谢你发布代码。你可以发布整个项目的xml和pkgproj或者其他类似的东西吗?你可以用什么来构建你的项目?有时调试msbuild项目是非常困难和不平凡的,特别是当错误隐藏得很深并且缺少信息性错误消息时。我要睡觉了,明天我会回答:)@JacekBlaszczynski我已经添加了xprojxml:)。这里也一样,谢谢大家!我想你已经通过MartinUlrich得到了答案
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">14.0</VisualStudioVersion>
    <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
  </PropertyGroup>
  <Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props" Condition="'$(VSToolsPath)' != ''" />
  <PropertyGroup Label="Globals">
    <TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>
    <ProjectGuid>17107df8-0cfa-6946-917a-a9b8765cf9ea</ProjectGuid>
    <RootNamespace>Website</RootNamespace>
    <BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)'=='' ">.\obj</BaseIntermediateOutputPath>
    <OutputPath Condition="'$(OutputPath)'=='' ">.\bin\</OutputPath>
    <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
  </PropertyGroup>
  <PropertyGroup>
    <SchemaVersion>2.0</SchemaVersion>
    <IsServiceFabricServiceProject>True</IsServiceFabricServiceProject>
  </PropertyGroup>
  <ItemGroup>
    <DnxInvisibleContent Include="bower.json" />
    <DnxInvisibleContent Include=".bowerrc" />
  </ItemGroup>
  <ItemGroup>
    <DnxInvisibleFolder Include="wwwroot\Angular\dist\" />
  </ItemGroup>
  <ItemGroup>
    <Service Include="{82a7f48d-3b69-4b1e-b82e-3ada8210c987}" />
  </ItemGroup>
  <Import Project="$(VSToolsPath)\DotNet.Web\Microsoft.DotNet.Web.targets" Condition="'$(VSToolsPath)' != ''" />
</Project>
{
  "sdk": {
    "version": "1.0.0-preview2-003156"
  }
}