在构建服务器上构建项目时,如何解决解决方案级别的预构建事件宏?

时间:2018-06-21 22:01:20

标签: .net visual-studio azure-pipelines pre-build-event

我指定了预构建事件

$(SolutionDir)Tools\ResxConverter.CLI.exe android $(SolutionDir)$(SolutionName).Core\Resources\ $(ProjectDir)Resources\

这在本地对我有效,但是构建服务器出现以下故障:

*Undefined*Tools/ResxConverter.CLI.exe android *Undefined**Undefined*.Core/Resources/ /Users/MyUser/myAgent/_work/9/s/MyProjectName/Resources/

似乎宏无法解析。显然这是因为构建服务器分别构建每个项目,并且宏仅在解决方案级别可用,但我不确定。

我需要做什么来解析构建服务器上预构建exe的路径?

1 个答案:

答案 0 :(得分:0)

事实证明,解决方法是修改PreBuildEvent以引用ProjectDir而不是SolutionDir,例如

<PreBuildEvent>$(ProjectDir)..\Tools\ResxConverter.CLI.exe ios $(ProjectDir)..\MyProject.Core\Resources\ $(ProjectDir)Resources\</PreBuildEvent>

这解决了与项目有关的变量,而不是解决方案。