我們有一個silverlight(5)項目,TFS(2010)和Continuous Integration構建中的源代碼已經安裝並正常工作。但是,我們現在正處於我們試圖將其發佈給某些用戶的階段,以便他們使用它並提供反饋。我已經設置了代碼,以便檢查更新以及是否有下載最新的xap文件。但是,這需要對xap文件進行簽名。在我們的開發機器上這樣做時沒有問題,但是當涉及到自動化構建時,它會失敗,並且消息問題在TFS的後期構建事件中籤署xap文件構建
Xap包裝失敗。無法找到簽名工具SignTool.exe。
我試過很多事情讓signtool被識別,不能。然而,我們實際上並不需要CI構建,所以我嘗試了第二種方法來讓postbuild事件在VisualStudio中運行。在這裏跟隨了關於SO的各種建議,但不能讓他們工作。
後生成的事件是
if "$(BuildingInsideVisualStudio)" == "true" (
"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" sign /f "$(SolutionDir)castle.pfx" "$(TargetDir)Castle.xap"
copy "$(TargetDir)Castle.xap" "$(SolutionDir)Castle.Web\ClientBin"
)
仍然沒有喜悅。已嘗試過多種變體,但始終從自動構建中獲取相同的消息。
那麼任何人都可以幫助:a)讓簽名工具在構建服務器上被識別或者b)讓自動構建跳過構建後的事件?
您能夠使用資源管理器導航到TF Build服務器上的SignTool.exe嗎? – TimVK 2013-03-21 13:46:33
@TimVK是的 - 如果我在命令提示符下運行等價物,它工作正常 – SteveL 2013-03-21 14:02:58
如果您使用標記腳本運行TFS構建,但沒有postbuild事件中的條件,您不能在日誌構建中看到「活動日誌「構建在哪裏尋找signtool? – TimVK 2013-03-21 14:09:11