Я использую Windows7 как ОС в качестве машины для разработки. Он имеет различные оболочки:

  • cmd
  • Powershell
  • Mysysgit GNU Bash <- это тот, который не работает
  • PuppetLabs Shell
  • Nodejs Shell
  • PHPStorm встроенный в терминал

но в Mysysgit/GNU Bash команда puppet не работала.

Самое смешное было: когда я вошел

$ where puppet

# Response:
C:\Program Files (x86)\Puppet Labs\Puppet\bin\puppet.bat

в каждом ударе (включая Mysysgit) я получил правильный путь. (Кажется, что только Powershell не совсем понимает, where использовать). В оболочке PuppetLabs я даже получил второй путь

$ where puppet

# Response
C:\Program Files (x86)\Puppet Labs\Puppet\puppet\bin\puppet
C:\Program Files (x86)\Puppet Labs\Puppet\bin\puppet.bat

Мои системные переменные окружения были отлично настроены: echo $PATH показал мне, что присутствовали оба включенных пути. Еще type puppet не работал.

После того, как я добавил C:\Program Files (x86)\Puppet Labs\Puppet\bin\puppet.bat к моей $PATH внезапно команда puppet была распознана ... и потерпела неудачу.

c:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- puppet/util/command_line (LoadError)
    from c:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:55:in `require'
    from c:/Program Files (x86)/Puppet Labs/Puppet/puppet/bin/puppet:3:in `<main>'

Версия марионетки 3.5.1 (последняя)

Я установил Ruby 1.9.3 и Ruby 2.0.x в моей системе. Может быть, конфликт с установками Ruby? Он не отображается ни в какой другой оболочке /Bash /Terminal /Console.

0