2012-11-07 15 views
12

Zrobiłem plik wsadowy próby ustawiania nachylenia/Środowisko ALBACORE na oknach:plik wsadowy nie uruchamia następną komendę po „gem install”

@echo off 

echo Setting up rake environment for building 

echo Installing Bundler 
gem install bundler 

echo Bundle Installing gems 
bundle install 

Gdy ten plik wsadowy (albo podwójne kliknięcie lub uruchom w oknie cmd), wykonywane jest tylko pierwsze polecenie gem. "Instalacja pakietu" nigdy nie jest wywoływana. Oto wynik:

C:\>InstallGems.bat 
Setting up rake environment for building 
Installing Bundler 
Successfully installed bundler-1.2.1 
1 gem installed 
Installing ri documentation for bundler-1.2.1... 
Installing RDoc documentation for bundler-1.2.1... 

C:\> 

Dodałem „pauza” po pierwszym „gem install” polecenia i wydaje się, że „pauza” nigdy nie jest wykonywana albo.

Każdy pomysł?

+0

Jest możliwe, że klej sam w sobie jest plikiem wsadowym lub że skrypt jest w jakiś sposób przerywany z powodu błędu i nie mówi o błędzie. –

Odpowiedz

19

Ahh, domyśliłem się: po prostu dodaj "połączenie" przed każdym poleceniem.

@echo off 

echo Setting up rake environment for building 

echo Installing Bundler 
call gem install bundler 

echo Bundle Installing gems 
call bundle install 
+4

Wygląda na to, że gem jest plikiem wsadowym. ze względu na sposób, w jaki poprzednio działał, w celu zapewnienia zgodności wstecznej, zachowanie to jest zgodne z projektem: http://stackoverflow.com/questions/11638705/why-does-calling-a-nested-batch-file-without-prepending-call- do wyjścia linii – SeanC

Powiązane problemy