我在Team Foundation服务器上有一个构建版本,它提供了这个交战:
C:\的Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Microsoft.Common.targets (610):没有为项目设置OutputPath属性 'Plugin.DeploymentTool.csproj'。请检查以确保您 已指定Configuration和Platform的有效组合 这个项目。 Configuration ='Release'Blatter ='x86'。你可能 看到这条消息,因为你正试图建立一个没有的项目 解决方案文件,并指定了非默认配置或 该项目不存在的平台。
我找不到任何解决方案或为什么我会收到此错误。但后来我看了生成的zip文件,Binary文件夹是空的。我试图使用x86,x64和Any CPU,如果有任何差异,那就没有了。
如果我查看项目文件,它看起来没问题。
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
答案 0 :(得分:45)
我找到了问题的解决方案,结果证明是一个非常简单的问题。 TFS Build中的默认配置如下所示: 配置:发布,平台:任何CPU
但在Visual Studio 2012中,它看起来像这样: 配置:发布,平台: AnyCPU
解决方案是删除TFS构建平台中Any和CPU之间的空间。现在它完美无缺。
<强>更新强>
此问题已在VS2013中得到纠正。
答案 1 :(得分:12)
对于Visual Studio Team Services(是Visual Studio Online)集成构建,@ mortenstarck的答案也可以解决问题。在构建的变量中,为anycpu
指定BuildPlatform
。
在构建步骤中引用该变量:
答案 2 :(得分:10)
除了其他答案,我注意到了这一点:
要构建 .sln (解决方案),您需要空间,因此必须为any cpu
(注意空格)。< / p>
要构建 .csproj ,您不需要空格,因此必须为anycpu
。