2015-11-30 99 views
0

我的TFS構建系統只需撥打一個PowerShell腳本,做彙編(通過的MSBuild),封裝應用,部署數據庫,等等TFS建立呼叫CMD沒有完成

不幸的是,我不明白爲什麼腳本不會完成。我嘗試退出0,調用exit 0,但它總是通過超時結束:

> Build succeeded. 
>  0 Warning(s) 
>  0 Error(s) Time Elapsed 00:00:13.48 
>  "MOVING APK IN SHARED FOLDER" 
>  1 file(s) copied. 
>  "SUCCESS !" 
>  C:\Build\SmartLingo>exit 0 

然後構建保持運行........永遠,直到一個小時(或直到我停止它自己)。

我終於發現,這是負責的這個無感線路如下:

call "C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe" /p:Configuration=Debug;Platform=Android;MDAVSIXDIR="%PROGRAMFILES(x86)%\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\ApacheCordovaTools";NODEJSDIR="%PROGRAMFILES(x86)%\nodejs";NPMINSTALLDIR="%APPDATA%\npm";LANGNAME="en-us";BUILDVERBOSITY=Normal C:\Build\Test\Test.jsproj 

如此看來,這個編譯執行的線程或類似的東西,並沒有完成......

任何想法如何使其工作? 謝謝

+0

[開始 - 作業](http://stackoverflow.com/questions/9756924/managing-the-running-time-of-background-jobs-timing-out-if-not-completed-after)以及設置超時。 – lloyd

+0

啓動作業將啓動腳本,如果達到超時,則會失敗。這不是我想要的。我的工作大約需要1分鐘,我只是想在我的bash腳本結尾處理TFS理解腳本已經完成並且可以成功。 – Adavo

+0

所以你的黑匣子腳本不能正常工作。請參閱[如何問](http://stackoverflow.com/help/how-to-ask) – lloyd

回答

1

如果您使用TFS 2015,我強烈建議您考慮切換到不依賴於MSBuild的新構建系統。您現在可以使用tutorial甚至Visual Studio Team Services extension

但是,如果您使用的是TFS 2013並且必須依賴MSBuild,則可能會遇到一個問題,您可以專門針對Android運行該問題,這是由最近版本的Cordova啓動的可導致問題的守護進程造成的描述。

tutorial已經更新,也有一些改進與更新TACO 5,但在這裏,對這個特定問題的總結:

在使用以下內容您的項目掛鉤\ after_compile文件夾中創建stopGradle.cmd:

IF EXIST platforms\android platforms\android\gradlew --stop

您還需要指定DebuggerFlavor得到它建立一個APK。詳細信息請查看tutorial