2016-03-03 48 views
1

我得到我的Rails应用以下错误:乘客错误“无法加载这样的文件:... union_station_hooks_core”

Web application could not be started 

cannot load such file -- /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/bundler/gems/passenger-e139c4cd3ebd/src/ruby_supportlib/phusion_passenger/vendor/union_station_hooks_core/lib/union_station_hooks_core (LoadError) 
    /u/sf/netmon/.rbenv/versions/2.3.0/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require' 
    /u/sf/netmon/.rbenv/versions/2.3.0/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require' 
    /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/bundler/gems/passenger-e139c4cd3ebd/src/ruby_supportlib/phusion_passenger.rb:235:in `require_passenger_lib' 
    /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/bundler/gems/passenger-e139c4cd3ebd/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb:232:in `before_loading_app_code_step1' 
    /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/bundler/gems/passenger-e139c4cd3ebd/src/helper-scripts/rack-preloader.rb:99:in `preload_app' 
    /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/bundler/gems/passenger-e139c4cd3ebd/src/helper-scripts/rack-preloader.rb:156:in `<module:App>' 
    /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/bundler/gems/passenger-e139c4cd3ebd/src/helper-scripts/rack-preloader.rb:30:in `<module:PhusionPassenger>' 
    /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/bundler/gems/passenger-e139c4cd3ebd/src/helper-scripts/rack-preloader.rb:29:in `<main>' 
Error ID 
28518bd5 

查看文件系统:

-bash-4.1$ pwd 
/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/bundler/gems/passenger-e139c4cd3ebd/src/ruby_supportlib/phusion_passenger/vendor/union_station_hooks_core 
-bash-4.1$ tree 
. 

0 directories, 0 files 

所以,很显然有确实没有这样的文件...我应该如何解决这个问题?

我的Gemfile:

source 'https://rubygems.org' 

gem 'rails', git: 'https://github.com/rails/rails', branch: '4-2-stable' 
gem 'actionpack-action_caching' 

gem 'pg' 
gem 'redis' 

gem 'rubytree' 

gem 'turbolinks' 
gem 'jquery-rails' 
gem 'jquery-datatables-rails', git: 'https://github.com/rweng/jquery-datatables-rails' 
gem 'rails-timeago' 
gem 'dygraphs-rails' 
gem 'underscore-rails' 
gem 'd3_rails' 
gem 'twitter-bootstrap-rails', '= 2.2.8' 
gem 'less-rails' 
gem 'coffee-rails', git: 'https://github.com/rails/coffee-rails' 
gem 'coffeebeans' 
gem 'jquery-ui-rails' 

group :assets do 
    gem 'sass-rails', git: 'https://github.com/rails/sass-rails', branch: '5-0-stable' 
    gem 'therubyracer', platforms: :ruby 
    gem 'uglifier', '>= 1.0.3' 
end 

gem 'jbuilder', '~> 1.0.1' 
gem 'passenger', git: 'https://github.com/FooBarWidget/passenger', branch: 'stable-5.0' 
gem 'rack-webauth' 

gem 'bunny' 

安装了Ruby 2.3.0通过ruby-build和乘客的Apache模块没有错误报告:

$ ./passenger-install-apache2-module 

... 

Validating installation... 

* Checking whether this Passenger install is in PATH... (!) 

    Please add /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/bundler/gems/passenger-e139c4cd3ebd/bin to PATH. 
    Otherwise you will get "command not found" errors upon running 
    any Passenger commands. 

    Learn more at about PATH at: 

    https://www.phusionpassenger.com/library/indepth/environment_variables.html#the-path-environment-variable 

* Checking whether there are no other Passenger installations... ✓ 
* Checking whether Apache is installed... ✓ 
* Checking whether the Passenger module is correctly configured in Apache... ✓ 

Detected 0 error(s), 1 warning(s). 
Press ENTER to continue. 

回答

1

好像通过乘客github上快速搜索帮助...

union_station_hooks_core和union_station_hooks_rails都是主乘客git仓库中的git子模块。所以修改我的gemfile以包括submodules: true将拉入所需的文件。

gem 'passenger', \ 
    git: 'https://github.com/FooBarWidget/passenger', \ 
    branch: 'stable-5.0', \ 
    submodules: true 
0

我有同样的问题。这是因为你的乘客不满。 完整的乘客将通过制造。 只需下载所需的版本是这样

wget http://s3.amazonaws.com/phusion-passenger/releases/passenger-5.0.26.tar.gz 

并解压到的/ opt /乘客 然后重新运行乘客安装,nginx的模块并将其添加到PATH -

echo 'PATH=/opt/passenger/bin:$PATH' >>etc/profile 
PATH=/opt/passenger/bin:$PATH 
export PATH 
passenger-config validate-install 

而且不忘在http部分正确

http { 
    ... 
    passenger_root /opt/passenger; 
    passenger_ruby /usr/bin/ruby; 
    ... 
} 
相关问题