lac*_*dev 89 msbuild visual-studio-2008 buildconfiguration
我在Visual Studio 2008中有一个多项目解决方案.我刚刚在解决方案中添加了一个名为Release-VersionIncrement的新配置,指定"use release"配置作为基线.所有项目文件都使用该配置进行了更新.但是,当我尝试使用此配置编译特定项目时,我收到以下错误:
错误5未为此项目设置OutputPath属性.请检查以确保您已指定有效的配置/平台组合.Configuration ='Release-VersionIncrement'Platform ='AnyCPU'C:\ WINDOWS\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets 539 9 DataConversion
这里发生了什么事?该项目在Release或Debug配置中编译良好.
Say*_*imi 93
通常,当项目文件的OutputPath属性为空时,会发生这种情况.项目文件只是MSBuild文件.要在Visual Studio中编辑:右键单击项目,选择"卸载项目",然后右键单击卸载的项目并选择"编辑...".
查找Release-Versionincrement属性组.它应该看起来像
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release-VersionIncrement|AnyCPU' ">
<OutputPath>bin\Release-VersionIncrement\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<Optimize>true</Optimize>
<DebugType>pdbonly</DebugType>
<PlatformTarget>AnyCPU</PlatformTarget>
<CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
<CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
OutputPath的重要之处在于它是否存在于您的项目文件中?如果没有添加,请重试.
Ric*_*all 77
当我们的构建代理程序配置为运行平台" 任何CPU "(在Visual Studio中显示空格)而不是" AnyCPU "(项目文件中指定的一个单词)时,我也看到了此错误.
小智 36
我第一次使用MSBuild时遇到了同样的问题.我的解决方案是:明确使用OutputPath属性.像这样:
msbuild XXX.csproj /p:OutputPath=bin\Debug.
Run Code Online (Sandbox Code Playgroud)
在我们的例子中,我们在HP开发人员框上运行了构建脚本.惠普有一些他们为自己设置的环境变量,其中一个是PLATFORM(显然是用于"HP Easy Setup").
删除PLATFORM环境变量有效.
您还可以通过指定平台来证明您的构建脚本,即
msbuild /p:Platform=AnyCPU.
如果Visual Studio专门抱怨"Platform ='BPC'",那么您可以通过删除"Platform"环境变量轻松解决此问题.

现在重新启动Visual Studio,你很高兴.
就像" Richard Dingwall "暗示的那样,问题与VS使用" Any CPU " 的显示版本而不是实际读取" AnyCPU " 的MSBuild版本有关.
进入构建/新构建定义或编辑构建定义 - >过程 - >配置构建,打开配置选择对话框并在" 平台 "中而不是选择" 任何CPU ",手动添加" AnyCPU "
| 归档时间: |
|
| 查看次数: |
87029 次 |
| 最近记录: |