MSBuild构建项目和具有相同配置的引用项目

时间:2018-03-28 16:33:26

标签: build configuration msbuild

我正在使用MSBuild构建一个配置为自定义配置的项目。我有一个引用项目(库),它没有设置任何cutom配置。问题是,似乎MSBuild正在使用相同的配置构建项目和项目引用。

我正在使用此命令:

msbuild.exe <path>\<project>.csproj /p:DeployOnBuild=true /p:OutDir=<dirpath> /p:Configuration=<CustomConfig>

我有以下错误:

  

C:\ Program Files    (86)\的MSBuild \ 14.0 \ BIN \ Microsoft.Common.CurrentVersion.targets(724,5):    错误:未为项目设置OutputPath属性    'referencedProject.csproj'。请检查以确保为此指定了Configuration和Platform的有效组合    项目。 Configuration ='CustomConfig'Platform ='AnyCPU'。你可能会看到    这条消息是因为你试图建立一个没有的项目    解决方案文件,并指定了非默认配置或    此项目不存在的平台。 [路径\ ReferencedProjectcsproj]

我在网上找不到任何相关内容,如果有人可以指点我或帮我解决这个问题,那就太棒了。

1 个答案:

答案 0 :(得分:0)

我找到了一个解决方法,将其发布在此处,以防有人在同一场景中结束。

项目库没有自定义配置,所以我必须编辑csproj文件,将构建配置的条件改为:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' Or '$(Configuration)|$(Platform)' != 'Debug|AnyCPU'">

如果处于发布模式或任何提到的自定义配置,这将强制编译器采用前导配置。

我找不到任何方法来命令MSBuild选择不同的配置项目依赖项。