【发布时间】:2012-02-23 21:12:04
【问题描述】:
关于可安装在轨道上的引擎的问题。首先这些是我正在使用的版本;
$ rails -v
Rails 3.2.1
$ ruby -v
ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]
我用这个创建可挂载引擎:
$ rails plugin new testEngine --mountable
create
create README.rdoc
create Rakefile
create testEngine.gtestEnginepec
create MIT-LICENSE
create .gitignore
create Gemfile
create app
create app/controllers/testEngine/application_controller.rb
create app/helpers/testEngine/application_helper.rb
create app/mailers
create app/models
create app/views/layouts/testEngine/application.html.erb
create app/assets/images/testEngine
create app/assets/images/testEngine/.gitkeep
create config/routes.rb
create lib/testEngine.rb
create lib/tasks/testEngine_tasks.rake
create lib/testEngine/version.rb
create lib/testEngine/engine.rb
create app/assets/stylesheets/testEngine/application.css
create app/assets/javascripts/testEngine/application.js
create script
create script/rails
create test/test_helper.rb
create test/testEngine_test.rb
append Rakefile
create test/integration/navigation_test.rb
vendor_app test/dummy
run bundle install
Fetching source index for http://rubygtestEngine.org/
Using rake (0.9.2.2)
Using i18n (0.6.0)
Using multi_json (1.1.0)
Using activesupport (3.2.1)
Using builder (3.0.0)
Using activemodel (3.2.1)
Using erubis (2.7.0)
Using journey (1.0.3)
Using rack (1.4.1)
Using rack-cache (1.1)
Using rack-test (0.6.1)
Using hike (1.2.1)
Using tilt (1.3.3)
Using sprockets (2.1.2)
Using actionpack (3.2.1)
Using mime-types (1.17.2)
Using polyglot (0.3.3)
Using treetop (1.4.10)
Using mail (2.4.1)
Using actionmailer (3.2.1)
Using arel (3.0.2)
Using tzinfo (0.3.31)
Using activerecord (3.2.1)
Using activeresource (3.2.1)
Using bundler (1.0.22)
Using rack-ssl (1.3.2)
Using json (1.6.5)
Using rdoc (3.12)
Using thor (0.14.6)
Using railties (3.2.1)
Using rails (3.2.1)
Using testEngine (0.0.1) from source at /private/var/www/html/development/projects/testEngine
Using jquery-rails (2.0.0)
Using sqlite3 (1.3.5)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
当我在引擎根目录(而不是 dummyapp)中使用 rails 命令时,我收到以下错误:
$ rails -v
script/rails:7:in `require': no such file to load -- rails/all (LoadError)
from script/rails:7
这是我在 script/rails 中的 rails 文件:
$ cat script/rails
#!/usr/bin/env ruby
# This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
ENGINE_ROOT = File.expand_path('../..', __FILE__)
ENGINE_PATH = File.expand_path('../../lib/ems/engine', __FILE__)
require 'rails/all'
require 'rails/engine/commands'
该错误表明问题源于底部的两个导轨。我能做些什么来解决这个问题吗?如果无法使用 rails,我将无法使用 rails 命令为我提供的任何工具,例如脚手架等。
感谢您的帮助,如果您需要更多信息,请告诉我。
【问题讨论】:
-
我也在Github上发现了这个问题github.com/rails/rails/issues/4894
标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1 rails-engines