Azure DevOps条件编译

4
我正在尝试在Azure DevOps中设置一个构建,其中包含使用条件编译符号的一些项目。构建失败了,因为它似乎没有看到我的符号。有什么想法在哪里应用设置吗?
我有两个共享一些代码的项目,该符号基本上用于控制项目之间的某些using语句。
Azure DevOps似乎忽略了我的csproj文件中标签中的内容。 这是相关csproj部分的图片。 enter image description here 这是MSBuild任务主配置屏幕的图片。 enter image description here 这是代码的选择 - 抱歉,我必须从所有内容中删除库的名称。 enter image description here 该项目构建时出现错误,指出“Microsoft.ServiceFabric”不存在,但实际上不应该出现这个错误,因为条件编译应该使用具有其他using语句的XYZ_ServiceFabric。我可以确认,这些项目在有或没有常量定义的情况下都可以成功构建。谢谢任何帮助。

你能提供一些构建项目的任务示例以及带有条件的 .csproj(和示例代码)文件的插图吗?条件编译在本地是否有效? - Josh Gust
似乎你正在使用MSBuild任务,有特定的原因吗?你是否使用Visual Studio Build任务能得到相同的结果? - Remco Brilstra
1个回答

2

Visual Studio的构建步骤应该会捕捉到您的条件编译符号。确保它们不仅在调试模式下设置,还要为“发布”配置进行设置。

enter image description here

默认情况下,它们被分别设置,并且Azure管道的默认行为是在“发布”中构建。

如果您希望更改此设置,则可以将构建的“BuildConfiguration”变量设置为“debug”(但我不建议这样做)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接