Почему я получаю синтаксические ошибки при развертывании capistrano? - PullRequest
0 голосов
/ 06 июня 2019

Я новичок с capistrano и ruby, и когда я использую cap deploy, я получаю некоторые ошибки.Я пытался обновить мою версию ruby ​​и io-console, но ни одна из них не помогла мне решить мою проблему.Может ли кто-нибудь помочь мне решить это?

Ниже моего журнала ошибок:

/usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require': /usr/local/share/ruby/gems/2.0/gems/i18n-1.6.0/lib/i18n/exceptions.rb:20: syntax error, unexpected <<, expecting ')' (SyntaxError)
      super(<<~MESSAGE)
              ^
/usr/local/share/ruby/gems/2.0/gems/i18n-1.6.0/lib/i18n/exceptions.rb:23: syntax error, unexpected keyword_in, expecting keyword_end
...hod is meant to display text in the user locale, so calling ...
...                               ^
/usr/local/share/ruby/gems/2.0/gems/i18n-1.6.0/lib/i18n/exceptions.rb:23: syntax error, unexpected tIDENTIFIER, expecting keyword_do or '{' or '('
... in the user locale, so calling it before the user locale has
...                               ^
/usr/local/share/ruby/gems/2.0/gems/i18n-1.6.0/lib/i18n/exceptions.rb:26: syntax error, unexpected tIDENTIFIER, expecting keyword_do or '{' or '('
...tside of the user flow, you can do so by passing
...                               ^
/usr/local/share/ruby/gems/2.0/gems/i18n-1.6.0/lib/i18n/exceptions.rb:27: syntax error, unexpected tIDENTIFIER, expecting keyword_end
...ctly with the `locale` argument, e.g. `I18n.#{method}(..., l...
...                               ^
/usr/local/share/ruby/gems/2.0/gems/i18n-1.6.0/lib/i18n/exceptions.rb:27: syntax error, unexpected tCONSTANT, expecting :: or '[' or '.'
...e `locale` argument, e.g. `I18n.#{method}(..., locale: :en)`
...                               ^
        from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from /usr/local/share/ruby/gems/2.0/gems/i18n-1.6.0/lib/i18n.rb:6:in `<top (required)>'
        from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from /usr/local/share/ruby/gems/2.0/gems/capistrano-3.11.0/lib/capistrano/i18n.rb:1:in `<top (required)>'
        from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from /usr/local/share/ruby/gems/2.0/gems/capistrano-3.11.0/lib/capistrano/all.rb:10:in `<top (required)>'
        from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from /usr/local/share/ruby/gems/2.0/gems/capistrano-3.11.0/bin/cap:2:in `<top (required)>'
        from /usr/local/bin/cap:23:in `load'
        from /usr/local/bin/cap:23:in `<main>'```


1 Ответ

3 голосов
/ 06 июня 2019

Путь вашего сообщения об ошибке выглядит так, как будто вы используете Ruby 2.0 и версию 1.6.0 гема i18n.В геме i18n в этой версии используется волнистый синтаксис heredoc (<<~).Синтаксис был введен в Ruby 2.3.

Это означает, что у вас есть два варианта:

  • Обновите версию Ruby по крайней мере до 2.3 или
  • понизить i18n.1.5.1 представляется последней версией, которая не зависит от Ruby 2.3
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...