2010-04-15 13 views
5

के तहत चल रहे रेल एप्लिकेशन प्राप्त करना कोई और लोहे के साथ खेल रहा है?आयरनआरबी रैक

मुझे आईआईएस 5.1 के तहत मेरी स्थानीय मशीन पर चलने वाली IronRuby.Rails.Example परियोजना सफलतापूर्वक मिली है। अब मैं अपनी खुद की डेमो रेल साइट को उसी तरह से चलाने का प्रयास कर रहा हूं।

मेरा वेब.कॉन्फिग उदाहरण प्रोजेक्ट से थोड़ा अलग है। मैं केवल आयरनआरबी 1.0 के साथ वितरित किया गया था और जो मैंने रत्नों का उपयोग करके स्थापित किया है उसका उपयोग करने का प्रयास कर रहा हूं।

डी:: /demo/config/boot.rb: 66: `बाहर निकलें 'में: निकास (SystemExit

मैं निम्न त्रुटि जो मुझे पर जाने के लिए एक बहुत नहीं देता हो रही है)

कई अलग-अलग चीजों की कोशिश करने के बाद, मुझे लगता है कि इसमें रत्न ढूंढने में कोई समस्या है। मैंने अपनी वेब कॉन्फ़िगरेशन और ironrack.log संलग्न किया है। क्या किसी के पास पॉइंटर्स हैं जो मैं गलत कर रहा हूं?

धन्यवाद!

<?xml version="1.0"?> 
<configuration> 
    <configSections> 
     <!-- custom configuration section for DLR hosting --> 
     <section name="microsoft.scripting" type="Microsoft.Scripting.Hosting.Configuration.Section, Microsoft.Scripting" requirePermission="false"/> 
    </configSections> 
    <system.webServer> 
     <handlers> 
      <!-- clear all other handlers first. Don't do this if you have other handlers you want to run --> 
      <clear/> 
      <!-- This hooks up the HttpHandler which will dispatch all requests to Rack --> 
      <add name="IronRuby" path="*" verb="*" type="IronRuby.Rack.HttpHandlerFactory, IronRuby.Rack" resourceType="Unspecified" requireAccess="Read" preCondition="integratedMode"/> 
     </handlers> 
    </system.webServer> 
    <system.web> 
     <!-- make this true if you want to debug any of the DLR code, IronRuby.Rack, or your own managed code --> 
     <compilation debug="true"/> 
    <httpHandlers> 
     <!-- clear all other handlers first. Don't do this if you have other handlers you want to run --> 
     <clear/> 
     <!-- This hooks up the HttpHandler which will dispatch all requests to Rack --> 
     <add path="*" verb="*" type="IronRuby.Rack.HttpHandlerFactory, IronRuby.Rack" /> 
    </httpHandlers> 
    </system.web> 
    <!-- DLR configuration. Set debugMode to "true" if you want to debug your dynamic language code with VS --> 
    <microsoft.scripting debugMode="false"> 
     <options> 
      <!-- Library paths: make sure these paths are correct --> 
      <!--<set option="LibraryPaths" value="..\..\..\Languages\Ruby\libs\; 
                ..\..\..\..\External.LCA_RESTRICTED\Languages\Ruby\ruby-1.8.6p368\lib\ruby\site_ruby\1.8\; 
                ..\..\..\..\External.LCA_RESTRICTED\Languages\Ruby\ruby-1.8.6p368\lib\ruby\1.8\"/>--> 
      <set option="LibraryPaths" value="C:\IronRuby\lib\IronRuby;C:\IronRuby\lib\ruby\1.8;C:\IronRuby\lib\ruby\site_ruby;C:\IronRuby\lib\ruby\site_ruby\1.8"/> 
     </options> 
    </microsoft.scripting> 
    <appSettings> 
     <add key="AppRoot" value="."/> 
     <add key="Log" value="ironrack.log"/> 
     <!-- <add key="GemPath" value="..\..\..\..\External.LCA_RESTRICTED\Languages\Ruby\ruby-1.8.6p368\lib\ruby\gems\1.8"/> --> 
     <add key="GemPath" value="C:\IronRuby\Lib\ironruby\gems\1.8\gems"/> 
     <add key="RackEnv" value="production"/> 
    </appSettings> 
</configuration> 

=== Booting ironruby-rack at 4/15/2010 1:27:12 PM [DEBUG] >>> TOPLEVEL_BINDING = binding 
=> Setting GEM_PATH: 'C:\\IronRuby\\Lib\\ironruby\\gems\\1.8\\gems' 
=> Setting RACK_ENV: 'production' 
=> Loading RubyGems [DEBUG] >>> require 'rubygems' 
=> Loading Rack >=1.0.0 [DEBUG] >>> gem 'rack', '>=1.0.0';require 'rack' 
=> Loaded rack-1.1 
=> Application root: 'D:\\demo' 
=> Loading Rack application [DEBUG] >>> Rack::Builder.new { (
    require "config/environment" 

    ENV['RAILS_ENV'] = 'development' 

    use Rails::Rack::LogTailer 
    use Rails::Rack::Static 
    run ActionController::Dispatcher.new 
    ) }.to_app exit 
    D:/demo/config/boot.rb:66:in `exit': exit (SystemExit) 
     from D:/demo/config/boot.rb:66:in `load_rails_gem' 
     from D:/demo/config/boot.rb:54:in `load_initializer' 
     from D:/demo/config/boot.rb:38:in `run' 
     from D:/demo/config/boot.rb:11:in `boot!' 
     from D:/demo/config/boot.rb:110 
     from C:/IronRuby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' 
     from C:/IronRuby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' 
     from D:/demo/config/environment.rb:7 
     from C:/IronRuby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' 
     from C:/IronRuby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' 
     from (eval):1 
     from C:/IronRuby/lib/ironruby/gems/1.8/gems/rack-1.1.0/lib/rack/builder.rb:46:in `instance_eval' 
     from C:/IronRuby/lib/ironruby/gems/1.8/gems/rack-1.1.0/lib/rack/builder.rb:46:in `initialize' 
     from (eval):0 
     from D:\Dev\ironruby\ironruby-ironruby-20bc41b\Merlin\Main\Hosts\IronRuby.Rack\RubyEngine.cs:52:in `Execute' 
     from D:\Dev\ironruby\ironruby-ironruby-20bc41b\Merlin\Main\Hosts\IronRuby.Rack\RubyEngine.cs:45:in `Execute' 
     from D:\Dev\ironruby\ironruby-ironruby-20bc41b\Merlin\Main\Hosts\IronRuby.Rack\Application.cs:68:in `Rackup' 
     from D:\Dev\ironruby\ironruby-ironruby-20bc41b\Merlin\Main\Hosts\IronRuby.Rack\Application.cs:32:in `.ctor' 
     from D:\Dev\ironruby\ironruby-ironruby-20bc41b\Merlin\Main\Hosts\IronRuby.Rack\HttpHandlerFactory.cs:37:in `GetHandler' 
     from System.Web:0:in `MapHttpHandler' 
     from System.Web:0:in `System.Web.HttpApplication.IExecutionStep.Execute' 
     from System.Web:0:in `ExecuteStep' 
     from System.Web:0:in `ResumeSteps' 
     from System.Web:0:in `System.Web.IHttpAsyncHandler.BeginProcessRequest' 
     from System.Web:0:in `ProcessRequestInternal' 
     from System.Web:0:in `ProcessRequestNoDemand' 
     from System.Web:0:in `ProcessRequest' 

उत्तर

3

exit प्रोग्रामिंग रूप से रूबी में छोड़ने का तरीका है।

रैक के पीछे विचार यह रूबी वेब ढांचे और वास्तविक ऐप सर्वर के बीच एक मिडलवेयर है। इसे decoupling करके, यह असंख्य रूबी ढांचे (रेल, sinatra, ramaze, आदि) एक एकल इंटरफेस को लक्षित करने देता है, और असंख्य ऐप सर्वर (mongrel, यात्री, यूनिकॉर्न, आदि के साथ apache) वही करते हैं। ऐसा लगता है कि आईआर लोग आईआईएस के साथ रैक काम करने की कोशिश कर रहे हैं। मैंने रैक कॉन्फ़िगरेशन पर रेल के लिए त्वरित गॉगलिंग किया, और this page

आउटपुट रेल सर्वर सर्वर विधि में जो दिखता है उसके समान दिखता है। मैं यह पता लगाने की जहां इस से

require "config/environment" 

ENV['RAILS_ENV'] = 'development' 

use Rails::Rack::LogTailer 
use Rails::Rack::Static 
run ActionController::Dispatcher.new 
) }.to_app exit 

आ रहा है कोशिश करते हैं और यह क्या है कि गाइड में है के करीब बनाने के लिए कोशिश करेंगे। यदि आप इसे वहां नहीं प्राप्त कर सकते हैं, तो मैं आईआर मेलिंग सूची पर पोस्ट करने का प्रयास करूंगा। वे काफी दोस्ताना होते हैं, और इस समय इस तरह की एक छोटी सी चीज है, इसलिए वे मदद करने के लिए पर्याप्त विशेषज्ञता वाले एकमात्र व्यक्ति हो सकते हैं।

शुभकामनाएं :-)

+0

आप पूरी तरह से सही रास्ते पर थे। मेरे पास रैक संस्करण 1.0.1 और 1.1.0 रत्न दोनों स्थापित थे। मैंने 1.1.0 को अनइंस्टॉल किया और अब मैं रूटिंग त्रुटि के माध्यम से जा रहा हूं .. तो ऐसा लगता है कि मैं फिर से enlighenment के रास्ते पर हूँ। – NotMyself

+0

मीठा, खुश मैं मदद करने में सक्षम था :) –

+0

@NotMyself - ऐसा लगता है कि मैं वही पथ पर हूं जैसा आप हैं; मैं पहले 'बाहर निकलने' की समस्या में भाग गया, और 1.1.0 को अनइंस्टॉल करना मेरे लिए भी तय किया गया। क्या आप रूटिंग त्रुटि को समझने में सक्षम थे? –

संबंधित मुद्दे