#bundle #bundler #drush
#пакет #bundler #drush
Вопрос:
Это то, что я использую: Windows 8. Cygwin32. Версия Rvm 1.25.27. Версия Ruby 2.1.2p95. Версия Gem 2.3.0. Версия Drush 5.9.
Я совершенно новичок во всем этом, поэтому вполне возможно, что объяснение действительно простое.
Я попытался использовать «drush omega-guard» из моей папки темы drupal, но получил сообщение об ошибке, в котором говорилось, что мне нужно установить пакет версии 1.2 или новее. Все в порядке, поскольку я не установил пакет. Но когда я пытаюсь использовать команду «bundle install», я получаю это:
$ bundle install
-bash: bundle: kommandot finns inte
(Kommandot finns inte = Команда не найдена.)
Когда я пытаюсь использовать «gem bundler install», я получаю это:
$ gem bundler install
ERROR: While executing gem ... (Gem::CommandLineError)
Unknown command bundler
Я также попробовал «установить gem bundle»:
$ gem bundle install
ERROR: While executing gem ... (Gem::CommandLineError)
Unknown command bundle
Поэтому я использовал «какой пакет», а затем использовал cd для доступа к этой папке.
$ which bundle
/home/I/.rvm/gems/ruby-2.1.2/bin/bundle
Я снова попробовал те же команды, но из другой папки, и в итоге получил это:
I@I ~/.rvm/gems/ruby-2.1.2/bin
$ gem install bundler
ERROR: While executing gem ... (TypeError)
no implicit conversion of nil into String
I@I ~/.rvm/gems/ruby-2.1.2/bin
$ gem install bundle
ERROR: While executing gem ... (TypeError)
no implicit conversion of nil into String
I@I ~/.rvm/gems/ruby-2.1.2/bin
$ bundle install
/home/I/.rvm/rubies/ruby-2.1.2/lib/ruby/site_ruby/2.1.0/rubygems/dependency.rb:313:in `to_specs': Could not find 'bundler' (>= 0) among 13 total gem(s) (Gem::LoadError)
Checked in 'GEM_PATH=/home/I/.rvm/gems/ruby-2.1.2:/home/I/.rvm/gems/ruby-2.1.2@global', execute `gem env` for more information
from /home/I/.rvm/rubies/ruby-2.1.2/lib/ruby/site_ruby/2.1.0/rubygems/dependency.rb:322:in `to_spec'
from /home/I/.rvm/rubies/ruby-2.1.2/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_gem.rb:53:in `gem'
from /home/I/.rvm/gems/ruby-2.1.2/bin/bundle:22:in `<main>'
Когда я использую команду «список драгоценных камней», пакет отсутствует в списке:
$ gem list
*** LOCAL GEMS ***
bigdecimal (1.2.5, 1.2.4)
io-console (0.4.2)
json (1.8.1)
minitest (5.3.5, 4.7.5)
psych (2.0.5)
rake (10.3.2, 10.1.0)
rdoc (4.1.1, 4.1.0)
test-unit (2.5.5, 2.1.2.0)
Что я упускаю или делаю неправильно? Я следил за этим руководством, и до этого момента все работало нормально: https://www.youtube.com/watch?v=XF_LaSfua8Yamp;index=10amp;list=PLLnpHn493BHH5nnK2dKE_42l1oXA6Tq6H
РЕДАКТИРОВАТЬ: поскольку я задал этот вопрос, я попытался переустановить ruby 2.1.2. Установка застряла на «#importing gemset», и примерно через 36 часов мой компьютер был отключен из-за отключения питания. Поэтому я не знаю, была ли завершена переустановка или нет. После этого я также изменил свою версию gem на 2.1.2, чтобы соответствовать версии ruby. Эти вещи, казалось, помогли, и после этого я мог запустить как «gem install bundler», так и «bundle install». Мой список драгоценных камней теперь выглядит так:
$ gem list
*** LOCAL GEMS ***
addressable (2.3.6)
bigdecimal (1.2.5, 1.2.4)
breakpoint (2.0.7)
bundle (0.0.1)
bundler (1.6.3)
celluloid (0.15.2)
chunky_png (1.3.1)
coderay (1.1.0)
color-schemer (0.2.8)
compass (0.12.6)
compass-blend-modes (0.0.2)
compass-normalize (1.5)
compass-rgbapng (0.2.1)
compass-validator (3.0.1)
css_parser (1.3.5)
dash (0.4.0)
fssm (0.2.10)
io-console (0.4.2)
json (1.8.1)
minitest (5.3.5, 4.7.5)
psych (2.0.5)
rake (10.3.2, 10.1.0)
rdoc (4.1.1, 4.1.0)
sass (3.2.19)
test-unit (2.5.5, 2.1.2.0)
timers (1.1.0)
Но при попытке запустить «drush omega-guard» возникает новая проблема:
$ drush omega-guard
Which theme do you want to run Guard for?
[0] : Cancel
[1] : Ohm (Subtheme of Omega) - Omega based demonstration theme. Serves as a
best-practice reference for the Omega documentation. Ohm will be
constantly updated as best practice evolves so shouldn't be used in
production.
[2] : Omega - A powerful HTML5 base theme framework utilizing tools like
Sass, Compass, Grunt, Bower, Ruby Version Manager, Bundler and more.
[3] : Design (Subtheme of Omega) - Please provide a description for
your theme.
3
There was a problem with your setup: [error]
Resolving dependencies...
Bundler can't satisfy your Gemfile's dependencies.
Install missing gems with `bundle install`.
Поэтому я снова пытаюсь использовать команду «bundle install», но в итоге получаю бесконечное сообщение об ошибке:
$ bundle install
Fetching gem metadata from https://rubygems.org/..........
Fetching additional metadata from https://rubygems.org/..
Resolving dependencies...
Using addressable 2.3.6
Using chunky_png 1.3.1
Using fssm 0.2.10
Using sass 3.2.19
Using compass 0.12.6
Using breakpoint 2.0.7
Using timers 1.1.0
Using celluloid 0.15.2
Using coderay 1.1.0
Using compass-blend-modes 0.0.2
Using color-schemer 0.2.8
Using compass-normalize 1.5
Using compass-rgbapng 0.2.1
Using compass-validator 3.0.1
Using css_parser 1.3.5
0 [main] ruby 15100 child_info_fork::abort: address space needed by 'fcntl.so' (0x620000) is already occupied
0 [main] ruby 11364 child_info_fork::abort: address space needed by 'fcntl.so' (0x620000) is already occupied
1 [main] ruby 14584 child_info_fork::abort: address space needed by 'fcntl.so' (0x620000) is already occupied
Последние три строки продолжают повторяться вечно, но с разными номерами. Итак, в чем проблема на этот раз?
Ответ №1:
Drush — это приложение на PHP, а не на Ruby.
Для работы с drush вам нужна рабочая среда PHP (сначала PHP cli).
Комментарии:
1. У меня установлен xampp, и когда я пишу «какой php», я получаю: $ which php / cygdrive / c / xampp / php / php Так что, я думаю, это не проблема?