2011-03-24 73 views

回答

16

執行前輸出至少出現在system.log中,並且在Console.app中可見。

+0

+1。我一直在看日誌導航器,但無法看到我的回顯被輸出。然後我檢查了Console.app,現在我看到它們在那裏列出。所以Console.app的作品。 – neoneye 2011-07-16 09:41:25

+5

xcode 5.1 - 我沒有在那裏看到我的回聲。它改變了還是我的預執行腳本沒有實際運行? – OrangeDog 2014-05-19 10:22:31

+2

「checked Console.app」是什麼意思?我似乎無法找到我的方案預行動腳本輸出 – hunteros 2014-10-08 21:47:18

25

您將在日誌導航器中發現(並且您可以在構建期間觀看)完整的構建輸出。這是Run and Build按鈕下方小圖標的最右側圖標。

+3

謝謝你給我這個暗示,唯一的問題是,我沒有看到任何reffering到訴訟前或構建後的行動。我在shell腳本中加入了'echo',但我沒有看到它。 – sorin 2011-03-24 16:44:51

+0

感謝您發佈此信息。我試圖找到項目構建結果阿拉Xcode 3,這是關於儘可能接近你。 – TahoeWolverine 2011-05-25 20:28:52

+0

日誌導航器輸出不包含Scheme「運行腳本」預執行的輸出。正如Jonah指出的,它可以在Console.app – daver 2012-08-24 06:14:18

4

根據我在這裏的答案(Is it normal for Xcode not to detect if a pre-action failed?)這是一個在開發論壇討論的問題。操作前/後操作腳本非零狀態似乎沒有影響,輸出似乎也不會將其記錄到任何日誌中。

+0

我無法在devforum上找到關於此的任何討論,但我添加了一個新的解決方案https://devforums.apple.com/message/427106#42​​7106 – sorin 2011-05-03 08:05:30

+0

論壇已移動,並且我沒有看到任何討論新論壇中的這個話題。 https://forums.developer.apple.com/search.jspa?q=xcode+logo – AnneTheAgile 2015-09-03 19:40:42

2

於是我想出了一個辦法既:從

  1. 顯示輸出預構建腳本
  2. 停止生成腳本生成錯誤

的情況下,基本概念是將構建事件的所有輸出發送到各種文件,然後將該輸出作爲目標構建腳本的一部分(它顯示它的輸出並可以退出或取消)。

警告黑客接近


設置一個構建腳本自動地處理抽輸出到2個不同的文件... 1的常規日誌,一個用於標準錯誤。或者使用mine(我在我的博客上公佈,因爲它似乎堆棧溢出代碼檢測很爛的shell腳本。)

那麼你應該調用腳本在方案預生成階段,像這樣:

"${PATH_TO_LOG_SCRIPT}/log_prebuild.sh" "${PATH_TO_PREBUILD_SCRIPT_TO_EXECUTE}/scriptToExecute.sh" 2> "${SOURCE_ROOT}/build/prebuild_error.log" 

然後,你需要在目標構建階段的編譯階段之前設置腳本,檢查這些文件的存在,將它們轉儲到日誌中,並在出現故障時中斷構建。或者你可以再次使用mine

然後建立和手指交叉:)

3

編輯:如下面這個答案只適用於構建階段腳本註釋中指出,不預動作和後動作腳本。


在Xcode 8中,您需要在「Navigator - > Report Navigator」中選擇最新版本。在主要區域中,您將能夠看到包含輸出的完整構建日誌。

Navigator selection

下面是一個簡單的「Hello world」回聲

Log

+4

這僅適用於添加到生成階段的腳本,該問題特別要求預先操作和後期操作腳本不起作用。 – Pranshu 2017-02-09 11:21:06