2012-04-05 35 views
1

我正在嘗試使用批處理腳本在Windows計算機上自動部署一個Ruby應用程序部署。Gem在Windows中通過批處理腳本安裝Bundler - 進程被終止了?

一切都花花公子,除了以下行:

gem install bundler 

如果我手動鍵入此在,一切順利。但是,如果我使用批處理腳本,則只要安裝完成,就會終止該進程。這就是我正在使用的:

pause 
gem install bundler --no-ri --no-rdoc 
pause 

我試着用-f開關和所有文檔;似乎沒有任何東西可以防止窗戶死亡。我需要這個過程才能保持活力,這樣我可以捆綁安裝。任何想法爲什麼發生這種情況,以及如何在安裝後保持活力?

回答

6

gem是批處理文件(gem.bat)。當你從另一個批處理文件中調用一個批處理文件時,它將控制權交給它,而不是恢復。

你應該嘗試使用CALL代替:

呼叫的第二批處理文件 CALL命令將與任何指定的參數一起推出一個新的批處理文件上下文。 到達第二個批處理文件的末尾(或者如果使用了EXIT),控制權將返回 ,直到初始CALL語句之後。

文檔瀏覽: http://ss64.com/nt/call.html

您也可避免批處理文件做ruby -S gem ...這是更冗長,將工作,因爲那裏是沿着gem.bat一個gem(擴展名)文件。

希望有所幫助。

+0

非常感謝。正是我在找什麼。 – RobVious 2012-04-06 17:09:17

+0

嚴格節省時間。 – 2012-04-25 14:30:49