bundle exec yra Bundler komanda, skirta paleisti scenarijų esamo paketo kontekste (iš jūsų katalogo Gemfile). rake db:migrate yra scenarijus, kur db yra vardų erdvė, o migrate yra apibrėžtas užduoties pavadinimas.
Ar reikalingas paketo vykdymas?
Vykdomas paketo vykdytojas ir paketas. require tuo pačiu metu nėra problema, todėl saugu naudoti bundle exec net tada, kai nereikia, kol tame kataloge yra Gemfile, jis nesuaktyvins brangakmenių du kartus.
Ką daro bundle exec rails?
bundle exec atlieka daugelį apvalkalo aplinkos pakeitimų, tada visiškai vykdo jūsų nurodytą komandą. Ji taip pat modifikuoja Rubygems: neleidžia įkelti papildomų brangakmenių, kurių nėra pakete. modifikuokite gem metodą, kad jis būtų neveiksmingas, jei rinkinyje yra reikalavimus atitinkantis brangakmenis, ir padidinkite Gem::LoadError, jei jo nėra.
Kaip sustabdyti paketo vykdymą?
Paprastai paspausite Ctrl-C, kad sustabdytumėte Webrick, kai jis paleidžiamas be parinkties -d.
Kodėl turiu įvesti bundle exec?
Bundler's bundle exec reikalauja Bundler sąrankos failo, kuris leidžia Bundler atlikti visus failų paieškos veiksmus, kai vėliau ko nors prireiks. Tačiau kai kuriais atvejais galite pastebėti, kad jei jūsų aplinkos kintamieji jau nustatyti teisingai, reikalavimas gali veikti be Bundlerio pagalbos.