问题描述
作为TeamCity下.Net应用程序构建过程的一部分,我们需要访问SignTool.exe来对程序进行签名。我已经可以通过将SignTool.exe的副本直接包含在相关项目的根文件夹中(例如,在Git存储库中包含SignTool.exe)来做到这一点,但这感觉很难看。解决方案。
我知道SignTool在服务器上,我也知道它的路径(C:\Program Files (x86)\Microsoft SDKs\ClickOnce\SignTool\signtool.exe
),但是我还没有找到让构建过程发现它的方法。
如果我尝试在不包含BuildTool.exe本地副本的情况下运行该版本,则会出现以下错误:
签名时发生错误:在路径E:\ TC_build_agent_work \(...)找不到SignTool.exe
显然,这直接在build文件夹中查找程序,并且失败。
我找到了一些有关使用关键字SignToolPath
向项目文件中添加提示的信息,并对其进行了一些尝试,但均未成功。
我还试图在TeamCity中添加正确的路径作为环境变量,但是我不清楚这是否或应该如何工作。无论如何,这对我的构建没有影响。
如何添加TeamCity(或MS Build?)并在正确的位置查找SignTool.exe的方式添加路径?