我正在开发2.0.2 rails应用程序。现在,当我在装有rake db:migate的windows pc上执行该命令时,它会给出Errno::ENOEXEC in SystemsController#index。
是否有其他方法可以从windows pc上的rails应用程序执行系统命令?
下面是错误:
Errno::ENOEXEC in SystemsController#index
Exec format error - rake db:migrate
RAILS_ROOT: E:/RoR/ibt/InstantRails-2.0-win/rails_apps/config
Application Trace | Framework Trace | Full Trace
E:/RoR/ibt/InstantRails-2.0-win/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/core_ext/kernel/agnostics.rb:7:in ``' ``
E:/RoR/ibt/InstantRails-2.0-win/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/core_ext/kernel/agnostics.rb:7:in ``'`
app/controllers/systems_controller.rb:24:in `index'我正在使用ruby控制台:
irb(main):001:0> system('dir')
Volume in drive E has no label.
Volume Serial Number is 522C-BDB1
Directory of E:\RoR\ibt\InstantRails-2.0-win\rails_apps\config
11/29/2012 03:11 PM <DIR> .
11/29/2012 03:11 PM <DIR> ..
11/29/2012 02:41 PM <DIR> app
11/29/2012 02:42 PM <DIR> config
=> true
irb(main):002:0> system('rake db:migrate')
=> false
irb(main):003:0> 发布于 2012-12-11 17:59:24
我已经通过运行rake所在的批处理文件中的rake文件解决了这个问题。
irb(main):001:0> system('dir')
Volume in drive E has no label.
Volume Serial Number is 522C-BDB1
Directory of E:\RoR\ibt\InstantRails-2.0-win\rails_apps\config
11/29/2012 03:11 PM <DIR> .
11/29/2012 03:11 PM <DIR> ..
11/29/2012 02:41 PM <DIR> app
11/29/2012 02:42 PM <DIR> config
=> true
irb(main):002:0> system('rake db:migrate')
=> false在控制器文件中
system("#{RAILS_ROOT}/../../ruby/bin/rake.bat db:migrate")给出结果
== 99 AddFieldtoSystemAssoziations: migrating =================================
== 99 AddFieldtoSystemAssoziations: migrated (0.0391s) ========================https://stackoverflow.com/questions/13814919
复制相似问题